<SEC-DOCUMENT>0000950170-25-062246.txt : 20250502
<SEC-HEADER>0000950170-25-062246.hdr.sgml : 20250502
<ACCEPTANCE-DATETIME>20250502060803
ACCESSION NUMBER:		0000950170-25-062246
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		85
CONFORMED PERIOD OF REPORT:	20250331
FILED AS OF DATE:		20250502
DATE AS OF CHANGE:		20250502

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			ICF International, Inc.
		CENTRAL INDEX KEY:			0001362004
		STANDARD INDUSTRIAL CLASSIFICATION:	SERVICES-MANAGEMENT CONSULTING SERVICES [8742]
		ORGANIZATION NAME:           	07 Trade & Services
		EIN:				223661438
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

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

	BUSINESS ADDRESS:	
		STREET 1:		1902 RESTON METRO PLAZA
		CITY:			RESTON
		STATE:			VA
		ZIP:			20190
		BUSINESS PHONE:		(703) 934-3000

	MAIL ADDRESS:	
		STREET 1:		1902 RESTON METRO PLAZA
		CITY:			RESTON
		STATE:			VA
		ZIP:			20190
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>icfi-20250331.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!-- DFIN New ActiveDisclosure (SM) Inline XBRL Document - http://www.dfinsolutions.com/ -->
<!-- Creation Date :2025-05-02T06:00:38.7629+00:00 -->
<!-- Copyright (c) 2025 Donnelley Financial Solutions, Inc. All Rights Reserved. -->
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:nonNumeric="http://www.xbrl.org/dtr/type/non-numeric" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ecd="http://xbrl.sec.gov/ecd/2024" xmlns:enum2="http://xbrl.org/2020/extensible-enumerations-2.0" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2024-01-31" xmlns:icfi="http://www.icf.com/20250331" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:ecd-sub="http://xbrl.sec.gov/ecd-sub/2024" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2022-02-16" xmlns:srt="http://fasb.org/srt/2024" xmlns:utr="http://www.xbrl.org/2009/utr">
 <head>
  <title>10-Q</title>
  <meta http-equiv="Content-Type" content="text/html"/>
 </head>
 <body style="padding:8px;margin:auto!important;z-index:0;position:relative;">
  <div style="display:none;"><ix:header><ix:hidden><ix:nonNumeric id="F_affa79a2-f280-4c2e-8c11-1255444db55f" name="dei:DocumentFiscalPeriodFocus" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9">Q1</ix:nonNumeric><ix:nonNumeric id="F_cc6bf241-7efd-4210-90a1-4ca2bcae618a" name="dei:EntityCentralIndexKey" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9">0001362004</ix:nonNumeric><ix:nonNumeric id="F_80a941c0-edc0-496f-9da9-ed60f2ad4c7c" name="dei:CurrentFiscalYearEndDate" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9">--12-31</ix:nonNumeric><ix:nonNumeric id="F_b1cc9223-3adb-4434-87ac-92740bcb0da9" name="dei:AmendmentFlag" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9">false</ix:nonNumeric><ix:nonFraction id="F_9c559757-bc65-4589-ae50-c0a77fd69d77" name="us-gaap:CommitmentsAndContingencies" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" unitRef="U_USD" xsi:nil="true"></ix:nonFraction><ix:nonFraction id="F_ee43ac49-a3cd-4af1-8ed3-2f5bfb4944df" name="us-gaap:CommitmentsAndContingencies" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" unitRef="U_USD" xsi:nil="true"></ix:nonFraction><ix:nonFraction id="F_eb3ab4f9-87f2-4ded-b488-8d1d3c1a58a1" name="us-gaap:PreferredStockValue" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" unitRef="U_USD" xsi:nil="true"></ix:nonFraction><ix:nonFraction id="F_2dcda0c3-bb48-42ae-b1b4-c6a8ae022af9" name="us-gaap:PreferredStockValue" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" unitRef="U_USD" xsi:nil="true"></ix:nonFraction><ix:nonNumeric id="F_bc987d48-d1fc-496c-8990-f399097b4f71" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" contextRef="C_cc0c285b-722e-4ae4-9191-0208c84dc361" format="ixt-sec:duryear">1</ix:nonNumeric><ix:nonNumeric id="F_b9778b98-1a47-4031-839a-f9e0f2a9a2ce" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" contextRef="C_b1f58b6a-aabd-48ae-a826-4b7bf82c9268" format="ixt-sec:duryear">1</ix:nonNumeric><ix:nonNumeric id="F_b1212fc9-e855-4dc6-9369-8a051e07668d" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" contextRef="C_cc0c285b-722e-4ae4-9191-0208c84dc361" format="ixt-sec:duryear">1</ix:nonNumeric><ix:nonNumeric id="F_955ea635-1723-4117-9828-3d958dd331cb" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" contextRef="C_e96a556f-6c8b-4c69-990b-3cf7504d7de3" format="ixt-sec:duryear">1</ix:nonNumeric><ix:nonFraction id="F_51a00615-6914-48fa-8ed4-d69f50bb4d78" name="us-gaap:NumberOfOperatingSegments" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" unitRef="U_Segment" decimals="INF" format="ixt:num-dot-decimal">1</ix:nonFraction><ix:nonFraction id="F_c0061dbd-9be7-4634-b204-9d0261eda80d" name="us-gaap:NumberOfReportableSegments" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" unitRef="U_Segment" decimals="INF" format="ixt:num-dot-decimal">1</ix:nonFraction><ix:nonNumeric id="F_f92f70f9-2dcc-40b9-bd51-72c6f9b0dfea" name="us-gaap:SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9">http://fasb.org/srt/2024#ChiefExecutiveOfficerMember</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:type="simple" xlink:href="icfi-20250331.xsd"/></ix:references><ix:resources><xbrli:context id="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_82d21078-75e2-4645-abab-f2cc96112b68"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">icfi:AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember</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="C_832766b3-22da-46ec-90fa-22ffcee71b17"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:TimeAndMaterialsContractMember</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="C_83b896a0-9a12-4146-82cd-1b0ee089bc6a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2025-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></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="C_8648b851-e7ef-4502-951a-ff9c4226a64d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_865abbb8-e708-4843-ad99-843c3e51718a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_86ed4c32-a07f-435c-a2de-68d84ca46f52"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">icfi:MillionShareRepurchaseProgramMember</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="C_89503513-13c5-4f37-a7ec-8d25384954ec"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_8ba1e5ce-0ade-429a-81fc-2cd9a86f9ff5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_8dc3cce5-4ddf-447b-8665-f21c71a4ef29"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditDerivativesByContractTypeAxis">icfi:JuneTwentySevenTwoThousandTwentyEightMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</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="C_8f3abf3b-8a9b-4dd3-9b57-d61259178c47"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_9281c9ab-2f63-4c32-8257-44e78e05c43e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndLocalGovernmentMember</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="C_93505554-9748-4f89-98a3-9b6f74dbca8c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</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="C_95e13872-fc31-450f-9cd0-90ee77c03bf3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_9ace2ee2-4780-404f-8831-c4897a9e81d6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-04-25</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_9e6f0002-5125-45cf-a28f-bf5906a2373d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-12-31</xbrli:startDate><xbrli:endDate>2024-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_9ee2d019-aa3d-4a4f-9a4a-4cc09920f90b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">icfi:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a012e2e7-4fcc-4a9a-b1cb-41f5afedd048"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</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="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_a9e36dfd-af68-4475-98ec-59ec73e3a0f2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</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="C_acb4e0fa-acb4-4617-8aa5-06cf651f97f4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">icfi:CostBasedContractMember</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="C_afd050b4-1de2-48ba-978e-e515dea2b202"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:InternationalGovernmentMember</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="C_afd9333b-a288-4f47-af97-3870f9bf83fc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">icfi:CashSettledRSUsMember</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="C_b1f58b6a-aabd-48ae-a826-4b7bf82c9268"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2025-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_b476051d-acdb-427d-8f5d-2aebbd684943"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_b51ff012-0999-41e8-aabc-a805309158c0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_b74866ce-58e9-4265-8578-7a14309d87ec"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ba5d0763-b64a-43dc-9a60-fcaaa4cb3e0c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">icfi:SegmentDepreciationAndAmortizationMember</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="C_bfb5c503-16b1-4160-b0ae-ce8464dccc17"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_c2328f97-1028-4ad0-a3f6-fb8de5b31735"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USFederalGovernmentMember</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="C_c284df75-1ba0-4f3b-a4f2-955dd514609a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</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="C_c2980db3-f07f-4041-82b0-ed1219de7116"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_c2b01a05-d0c9-47fe-9d80-fde68bdf35ad"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">icfi:MillionShareRepurchaseProgramMember</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="C_c54427f6-4d40-4ed9-a059-5e5e46151c50"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</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="C_c6b1312a-edb1-4a3b-9f7f-b97f285aa893"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</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="C_c7ab718a-ae03-4c39-bd1e-e53f0f8c990e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">icfi:EmployeeStockAwardsMember</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="C_c881ed46-ad82-4505-b406-f06c9b93a2f7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_c98a0507-2ef5-4b6b-8ea9-9cfc334c9a9d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_ca3d0338-6140-447b-bd71-0ce3e3b69b4b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:CommercialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_cc0c285b-722e-4ae4-9191-0208c84dc361"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2025-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_d077db2c-1201-47ee-97d7-0b2c6edbe4d9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_d0ecbed3-ba12-4ba8-970b-d8efdb285e1e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">icfi:VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember</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="C_d2517fae-ab23-4024-9b66-ae0c57301981"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-04-25</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_d57ad3e9-6538-4c19-9cd0-d5c27b5f72be"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:SecurityAndOtherCivilianAndCommercialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_d59e7f6c-6be0-4dc7-8e33-a47e421cfef9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_d5debb6a-e3cd-4c36-a151-a29229e8eeac"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">icfi:AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember</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="C_db216d59-a19f-49f7-a516-c41ffbd5721a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:IntangibleAssetsNetExcludingGoodwillMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_db7030f9-fff2-4759-9827-3e00df353c48"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_dcb9f15f-7dbf-4c24-ba62-4371bc6681ca"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndInternationalGovernmentMember</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="C_e27d3e7d-ee94-449b-bf1d-82c286cd3fe5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_e2fa8410-f9e6-4f90-84e5-0fe612923e5a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</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="C_e4643d4e-157a-47eb-9768-5f96b6d3c932"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_e465158c-a18e-4d0f-9021-610445a089aa"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_e556f098-db10-4065-8c0f-c09bcb16d0b8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_e5627bea-4bc9-4e67-8942-517566d89aaa"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:AccruedExpensesAndOtherCurrentLiabilitiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_e86b3d44-b8ec-4784-aebd-c72412fc6544"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_e96a556f-6c8b-4c69-990b-3cf7504d7de3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2026-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_eadcbac7-05a9-43c6-bb48-2856312f45de"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</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="C_eaf8d061-8b32-4c51-a3e3-903022a6b165"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">icfi:MillionShareRepurchaseProgramMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ec06fe12-c155-40f5-94db-0bce2d5ef1d4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">icfi:CompanyOwnedLifeInsurancePoliciesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ec625ed0-9d87-438f-bcfb-573cfe9563f3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:InternationalGovernmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_ec67ad54-e2c6-459b-ac2a-1c80507eef70"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_edaaa534-a6bd-4967-a81a-123d9286b9ad"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditDerivativesByContractTypeAxis">icfi:FebruaryTwentyEightTwoThousandTwentyEightMember</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="C_ee2386b3-1d85-48a6-b287-bf7ab1a771b3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:HealthAndSocialProgramsMember</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="C_eee9c0ed-4279-41c1-86a0-a7968bfdf78b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">icfi:CompanyOwnedLifeInsurancePoliciesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_efa12804-12fd-42a8-8d38-2679140208f2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndLocalGovernmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_f0215c95-f102-42e2-9f17-aff7eb1fc531"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_f43c9e8b-2753-4f81-a850-d05b66f6083c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">icfi:CostBasedContractMember</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="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_f5e4288d-0c00-4986-8cc6-7b8c6cdc84c1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USFederalGovernmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_f84c9782-f8ab-4f6a-b349-2b609fdec6dc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_f86e4dea-16a2-4319-b4dd-9bb5ce4a0825"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</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="C_f8ae11e8-edbd-4319-8986-377724fc88d0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_fc2ef133-12c4-4171-a846-46c299d306c3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_fcab69ee-709e-4d1e-b8fb-65f72a7ce8db"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</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="C_fe0b1ad2-b71a-4e78-9ac4-f77948118549"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_01114fe7-639c-42b3-8fb0-57f413ff7531"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_012c42a7-da01-4ce4-bcaf-1ce14733fd9a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_03f68630-29e5-4ea8-ae0e-5ea8d827f734"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_04c3445e-c079-4c5f-9e9a-5d1a87eddcde"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</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="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_069d1d43-0a2e-454f-a95b-6c8f6f730036"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USFederalGovernmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_08338f0b-5a24-4431-bf34-ef6998ad1b46"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USFederalGovernmentMember</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="C_0a7ca982-a79b-42fc-8208-71975a520f92"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndInternationalGovernmentMember</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="C_0aed76c9-e962-4c73-9842-27d5b9f60265"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:HealthAndSocialProgramsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_0b23d0b4-7b10-4543-9657-854b7ce89dd4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">icfi:CompanyOwnedLifeInsurancePoliciesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0c85ec78-5db4-47b1-a9f7-65ad9cd5f819"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_0ce63ddf-f2f4-449a-b8a8-898af6c132f6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_0e036038-5185-45ec-bc46-7db5540888de"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:AccruedExpensesAndOtherCurrentLiabilitiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0f664dab-464c-49d8-9f1a-a047dc72f783"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:CommercialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_0ff21424-dcea-468a-90db-f97547236a4a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_11354c7f-7371-4601-8c66-053545e8fdee"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_115f587b-83e0-4c3c-a011-a7e4b770764c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:HealthAndSocialProgramsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_1197b833-3595-4136-8376-51bbb5058b00"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditDerivativesByContractTypeAxis">icfi:JuneTwentySevenTwoThousandTwentyEightMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_1249add0-8323-452e-a930-09fedf84c6b2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_14e528e0-8808-4d1f-b13a-10ed2d500bec"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_154e9ced-a7bc-4168-87ae-5d6b9aae4177"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_15f9cc62-57d3-4011-868e-fa21d140029f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_177f9582-c387-46b3-b057-848b45730ee7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_1aafb042-ee6c-4f5e-ba1e-10950a029c05"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_1ab134c6-d4b3-46fa-ab4b-f87ab7775117"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:InternationalGovernmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_1c2ff08b-dd48-45ac-8d1c-5d0adee40de1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_1c5f0b7a-89d2-4fbf-b457-f53569fe6777"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_1cddb288-e964-451e-a81a-0f4156fafa21"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">icfi:VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember</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="C_1f0fbfd3-298d-441a-94a2-ee47916fe352"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndInternationalGovernmentMember</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="C_1f387a1f-cbe1-491e-9324-6f5097db4eb4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_23912cec-c646-4b5b-bb4c-0af9c401b5ef"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="icfi:ContractReceivablesAxis">icfi:MasterReceivablesPurchaseAgreementWithMufgBankMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_23ecbd7d-b4ab-4be4-b21b-0c94dc3a62c0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:AccruedExpensesAndOtherCurrentLiabilitiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_24d7c4dc-b654-4bda-ae79-a5943705570e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</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="C_2feac70a-551b-436a-ab31-e3597195f9b5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_303ab8ab-e9ca-4ffd-b3ef-e1a4befbc6c2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_3095a2ed-0bae-42bd-9607-fd26d0bf9a8a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">icfi:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_31c84116-404b-4fcd-a354-fed1fee2a202"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndLocalGovernmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_345f4281-481c-4eee-9334-a2f509aad8d8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_34fefb41-e415-441d-8e0d-1e45cd55375d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">icfi:OmnibusPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3517c095-337d-4942-b8d2-d306b64e8337"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_359bce9d-0b82-4401-934b-1a14d1fb9b89"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</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="C_366bd7da-e2a6-4ff1-bb17-abca9a65eb2c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">us-gaap:LineOfCreditMember</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="C_3a796a9d-5766-4805-8b2a-2ff890188751"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3b951961-6572-4dbd-a007-2443f0726987"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_3bf23c7a-75e6-47a5-abfe-04e4efc6ca0c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:IntangibleAssetsNetExcludingGoodwillMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3cd9094a-0fe5-47f4-88e8-26bd8d9c814f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">icfi:OmnibusPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-04-03</xbrli:startDate><xbrli:endDate>2018-04-04</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_3ecd6ed2-c36f-414d-93ea-f6382cbe02f8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:HealthAndSocialProgramsMember</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="C_3f84f106-4922-459f-801e-6ed142bd4871"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_408a8d7a-adcc-4ee6-b3b7-b6fce8885276"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:DelayedDrawTermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_40da89d2-3f28-4ad2-a4ca-560892ef9004"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_41834a87-ffb8-4b29-9f7a-04009c22d2d8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_420fadfa-6fa7-4e06-a0bf-aed952d980b6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:CommercialMember</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="C_420fce3b-d577-4598-a8cb-7b980ea4a3a9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">icfi:CostBasedContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_421bd624-4fbd-4ce7-bc99-10481d9ef79a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:InternationalGovernmentMember</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="C_42bd8d7d-8340-4d3f-b1e1-8d37817dce72"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:EnergyEnvironmentInfrastructureAndDisasterRecoveryMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_4340c5ae-462d-44cd-b66d-499120292957"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndLocalGovernmentMember</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="C_43d13fc6-f869-4369-a3d2-252c2f7fb342"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4487f286-b161-471f-9f1f-930ddae96456"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:EnergyEnvironmentInfrastructureAndDisasterRecoveryMember</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="C_46cd81a1-3db3-42f6-b3ab-758fd659bee5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:TimeAndMaterialsContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4e228a4a-1d27-4d01-9790-529f658e7a58"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4e4c9c95-c7ec-42bf-92fc-e01f8841e066"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:SecurityAndOtherCivilianAndCommercialMember</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="C_524c1f59-fefa-4b0f-be9d-91e3cedad43d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:EnergyEnvironmentInfrastructureAndDisasterRecoveryMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_5581414c-697a-4843-b00e-872556ab5b09"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditDerivativesByContractTypeAxis">icfi:FebruaryTwentyEightTwoThousandTwentyEightMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_5647a77d-445a-47db-8541-6af6f2e97582"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">icfi:CompanyOwnedLifeInsurancePoliciesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_57bb215b-5356-401f-8995-dd1b215e7488"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:AccruedExpensesAndOtherCurrentLiabilitiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_598c0462-6afd-47c9-b4bb-5b35bc9efb51"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndInternationalGovernmentMember</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="C_5ab8b4c0-990d-48cc-8c7e-798cb22c2869"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_5b2f62c2-6ae0-4941-81f5-762b8a422db0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">icfi:EmployeeStockAwardsMember</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="C_5c6ef9ed-d6a9-425e-8d10-b25381323fbc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_5ce863bf-c10b-40aa-a28b-5d32c8cb7fd9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">icfi:CostBasedContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_5fd83144-3897-4f84-96ea-5e88b71cc15c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_600d0231-174b-43f7-ab40-55ba78417e39"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">icfi:CashSettledRSUsMember</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="C_606932a5-5f82-45d9-b5fe-618a80a169b5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</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="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:DelayedDrawTermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_643b12b8-599c-49b4-8711-809093c2c045"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_65a9caf8-af7b-40d9-b7fe-4e88d11370da"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_65b8a2bd-11e0-47d3-a8bf-6ada5559cac9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_66f8e428-8207-46f0-88a4-c65a674fe7ae"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_6a6cf1ae-dcd8-4436-891e-d08dab284cee"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="icfi:ContractReceivablesAxis">icfi:MasterReceivablesPurchaseAgreementWithMufgBankMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_6fac847c-8078-41ea-89da-f86c78130f0b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_6fe8c294-29ff-487d-9d7b-390239496c02"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:TimeAndMaterialsContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_714e3fa3-0bc6-4098-b461-0fc7b3639e7c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="C_75d62052-354b-49bd-ad1a-c6542718a3e2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:SecurityAndOtherCivilianAndCommercialMember</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="C_765bbd2e-9be5-405b-bd3e-14025deeb60a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:SecurityAndOtherCivilianAndCommercialMember</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="C_7782ddb3-fe57-4895-bf93-617a0c9a2238"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:TimeAndMaterialsContractMember</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="C_77ad4326-8766-4793-8bd1-a2a47caf60eb"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7827564c-2547-4664-83a9-5dbd1c5a1e12"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:CommercialMember</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="C_79dbce0a-82e1-44a9-bdea-504fd0b91ca4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_7a0c649b-3e1d-4d1d-a3a3-b66c1bc2cf25"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">icfi:SegmentDepreciationAndAmortizationMember</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="C_7c50e895-8ea4-408e-a9f7-6d3eaab5c259"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:EnergyEnvironmentInfrastructureAndDisasterRecoveryMember</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="C_7db129b0-0161-4e6b-98c7-256cbd332f4f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">us-gaap:LineOfCreditMember</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="C_7e5d1f96-5f21-4b79-bf44-f99192a42dda"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001362004</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</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:unit id="U_pure"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:unit id="U_UnitedStatesOfAmericaDollarsShare"><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="U_shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="U_Segment"><xbrli:measure>icfi:Segment</xbrli:measure></xbrli:unit><xbrli:unit id="U_USD"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_f9bca2f9-d335-4332-9735-5bde85ef9630" fromRefs="F_a6a82561-18d3-45b0-bc26-bc32efff5e49 F_26880c7c-3d42-4d8b-8eaa-e4814a2d93f3"/><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_39ecc697-12f7-4baf-aba4-a924576f28e1" fromRefs="F_2bff5b95-d60c-42a7-ad55-478c552d50a8 F_5b7f5901-7b25-4a93-ac91-a24bf2d126a5 F_857e7fd3-d582-4160-8381-a1b82785d932 F_9c4f384d-7e45-404a-a6b0-35d78fc49e0f"/><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_d1332bc6-5fe5-4160-a3ef-ad6f13c8f985" fromRefs="F_1afbfb38-878c-4001-b438-9812cb12ce15 F_86fbc746-81cf-4e5e-8582-8319bf618dfc"/><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_6d0ca688-1ea8-4379-9f51-cf6180485ed5" fromRefs="F_b4e90267-913a-4e8c-b65b-ae46f879eb8e F_508711e7-8990-4839-8515-eacdda51b6e1"/><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_fd72a864-4fd5-4b4e-9a66-38ecb5b278a5" fromRefs="F_bee7fb91-6676-4b53-b526-4712034f6fbc F_dd449503-322b-4309-a0fc-2d68634dc42a F_b0daecf3-2a14-4411-a8e6-7a2bf0c078d5 F_d5a2d9bb-706a-4a71-89db-8c1c1b3eb44d"/><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_648cca45-e463-4126-8651-e226e64461ab" fromRefs="F_f94e8f32-953d-4d14-abfd-0c40abb243f5 F_3d34d880-3164-4b1c-8b67-6e970453f968"/><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_4909917d-0685-4b82-9a24-610497a41b08" fromRefs="F_9672d8e5-b2d5-44e8-9ee9-1d87baeee88e F_254c6068-cd9c-41dc-9dfc-1545e23c0e43 F_c0bec086-e6da-4280-baa3-a0ffbb10676b"/><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_e6741e45-c854-4f8b-85a7-8762b41454e5" fromRefs="F_9672d8e5-b2d5-44e8-9ee9-1d87baeee88e F_254c6068-cd9c-41dc-9dfc-1545e23c0e43 F_c0bec086-e6da-4280-baa3-a0ffbb10676b"/><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_e395be57-cd1e-4f15-8a0a-58d6cbdf31f4" fromRefs="F_3b5959ed-33ee-49ef-895c-d4f212203bc1 F_c2dfb09f-6a50-48d2-8603-139c164d9f42"/></ix:resources></ix:header></div>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:1.5pt double;text-align:left;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:16pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">UNITED STATES</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:16pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">SECURITIES AND EXCHANGE COMMISSION</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Washington, D.C. 20549</span></p><p style="margin-left:40%;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid #000000;margin-right:40%;text-align:center;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:16pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">FORM </span><span style="font-size:16pt;font-family:Times New Roman;"><ix:nonNumeric id="F_531ff9ca-0072-4d35-9df2-3cb52bd2c234" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:DocumentType"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:16pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10-Q</span></ix:nonNumeric></span></p><p style="margin-left:40%;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid #000000;margin-right:40%;text-align:center;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(Mark One)</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:4.36%;box-sizing:content-box;"/>
     <td style="width:95.64%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:12pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:12pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_dbb1e24a-b7a1-45db-91bb-e9cf85ef59cd" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:DocumentQuarterlyReport" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">&#9746;</span></ix:nonNumeric></span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:12pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:5pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the quarterly period ended </span><span style="font-size:12pt;font-family:Times New Roman;"><ix:nonNumeric id="F_b5ab3303-bbcb-4aac-97d5-67ade34ce69c" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, </span><span style="font-size:12pt;font-family:Times New Roman;"><ix:nonNumeric id="F_31b30dd7-872e-44e6-b452-174d5e3050d1" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:DocumentFiscalYearFocus"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025</span></ix:nonNumeric></span></ix:nonNumeric></span></p><p style="font-size:10pt;margin-top:5pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">OR</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:4.38%;box-sizing:content-box;"/>
     <td style="width:95.62%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:12pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:12pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_af89ae01-9aec-41d1-bb1b-f15886e03957" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:DocumentTransitionReport" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">&#9744;</span></ix:nonNumeric></span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:12pt;margin-top:5pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">FOR THE TRANSITION PERIOD FROM </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;text-decoration:underline solid;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">            </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> TO</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">            </span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Commission File Number: </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_ff702363-239f-4f18-9c86-20a26cbcc647" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityFileNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">001-33045</span></ix:nonNumeric></span></p><p style="margin-left:40%;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:40%;text-align:center;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:16pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d443397d-fe0f-4105-a743-48cc2e58d7bb" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityRegistrantName"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:16pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ICF International, Inc.</span></ix:nonNumeric></span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(Exact name of Registrant as Specified in its Charter)</span></p><p style="margin-left:40%;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:40%;text-align:center;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:1.426%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:49%;box-sizing:content-box;"/>
     <td style="width:2%;box-sizing:content-box;"/>
     <td style="width:49%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_1c2fe65a-bf89-4ac4-9888-a5f3e6be200a" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Delaware</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_bae820ac-1c9c-406b-bd18-470b17331922" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityTaxIdentificationNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">22-3661438</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(State or Other Jurisdiction of</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Incorporation or Organization)</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(I.R.S. Employer</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Identification No.)</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_5ac0844c-f828-4cb5-8bc4-1bf4cd25469d" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityAddressAddressLine1"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">1902 Reston Metro Plaza</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">, </span><span><ix:nonNumeric id="F_b55e6df7-5ccc-46e2-9ca5-3908ce9b7382" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityAddressCityOrTown"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Reston</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">, </span><span><ix:nonNumeric id="F_d49dbb14-3a48-4e24-8ea4-2f985201c0f7" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityAddressStateOrProvince"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">VA</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_b56aa98f-9062-4569-b93a-4396f9aafdd6" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityAddressPostalZipCode"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">20190</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(Address of Principal Executive Offices)</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(Zip Code)</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Registrant&#8217;s telephone number, including area code: (</span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_79541b18-7978-43df-b576-f1b31f878de7" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:CityAreaCode"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">703</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">) </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_bcc09b25-2912-4a29-a752-c3de6c962159" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:LocalPhoneNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">934-3000</span></ix:nonNumeric></span></p><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Not Applicable</span></p><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:7.5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(Former name, former address and former fiscal year, if changed since last report)</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Securities registered pursuant to Section 12(b) of the Act.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:34.12%;box-sizing:content-box;"/>
     <td style="width:29.28%;box-sizing:content-box;"/>
     <td style="width:36.6%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Title of each class</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Trading Symbols(s)</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Name of each exchange on which registered</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_b3912191-42a9-4fe7-a7cd-5d0ee1f63c13" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:Security12bTitle"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Common Stock</span></ix:nonNumeric></span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_68cf1456-bcc0-49d3-b45f-533b9f4d21e7" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:TradingSymbol"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">ICFI</span></ix:nonNumeric></span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_14c44169-b322-446c-9170-d1fcfbf92e09" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">The Nasdaq Global Select Market</span></ix:nonNumeric></span></p></td>
    </tr>
   </table><p style="margin-left:40%;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:40%;text-align:center;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:5pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.    </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9746;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_999146fd-4706-4d4f-8f0c-57ba6620afb0" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityCurrentReportingStatus"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Yes</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">     </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  No</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:5pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (&#167; 232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).    </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9746;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_165672f0-d975-49e7-bcc7-992ae89f9b2f" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityInteractiveDataCurrent"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Yes</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">     </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  No</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:5pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, smaller reporting company, or an emerging growth company. See the definitions of &#8216;&#8216;large accelerated filer,&#8217;&#8217; &#8216;&#8216;accelerated filer,&#8217;&#8217; &#8216;&#8216;smaller reporting company,&#8217;&#8217; and &#8216;&#8216;emerging growth company&#8217;&#8217; in Rule 12b&#8211;2 of the Exchange Act.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:19.996%;box-sizing:content-box;"/>
     <td style="width:1.12%;box-sizing:content-box;"/>
     <td style="width:2.22%;box-sizing:content-box;"/>
     <td style="width:43.331%;box-sizing:content-box;"/>
     <td style="width:25.555%;box-sizing:content-box;"/>
     <td style="width:1.12%;box-sizing:content-box;"/>
     <td style="width:6.659%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span><ix:nonNumeric id="F_526d71a4-69b2-44ce-842e-1e3dc4d54230" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Large accelerated filer</span></ix:nonNumeric></span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9746;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accelerated filer</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Non-accelerated filer</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Smaller reporting company</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_570a5c75-6590-4643-8aff-e4706f90ff5f" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntitySmallBusiness" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#9744;</span></ix:nonNumeric></span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Emerging growth company</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_af672a5e-ddc0-4e6e-b5db-53a064b3ee86" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#9744;</span></ix:nonNumeric></span></p></td>
    </tr>
   </table><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.      </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">   </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:5pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).    </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  Yes     </span><span style="font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_699fed04-3101-4bad-9f13-ec36771a227c" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="dei:EntityShellCompany" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9746;</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  No</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:5pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">As of April 25, 2025, there were </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_555f4613-177d-47c8-b2bd-a7471318f9d7" contextRef="C_d2517fae-ab23-4024-9b66-ae0c57301981" name="dei:EntityCommonStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">18,411,115</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> shares outstanding of the registrant&#8217;s common stock.</span></p><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:2pt;border-bottom:1.5pt double;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ICF INTERNATIONAL, INC. AND SUBSIDIARIES</span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">QUARTERLY REPORT ON FORM 10-Q FOR THE</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">PERIOD ENDED MARCH 31, 2025</span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">TABLE OF CONTENTS</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:8%;box-sizing:content-box;"/>
     <td style="width:87%;box-sizing:content-box;"/>
     <td style="width:5%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td colspan="2" style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#part_i_financial_information"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">PART I. FINANCIAL INFORMATION</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 1.</span></p></td>
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_1___financial_statements_"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Financial Statements</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:2.267%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#consolidated_balance_sheets"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Consolidated Balance Sheets at March 31, 2025 (Unaudited) and December 31, 2024</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;text-indent:24.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:2.267%;text-indent:-2.319%;padding-left:2.267%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#consolidated_statements_comprehensive_in"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Consolidated Statements of Comprehensive Income (Unaudited) for the Three Months Ended March 31, 2025 and 2024</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:25.2pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:2.267%;text-indent:-2.517%;padding-left:2.4%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#consolidated_stockholders_equity"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Consolidated Statements of Stockholders&#8217; Equity (Unaudited) for the Three Months Ended March 31, 2025 and 2024</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:2.267%;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:2.267%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#consolidated_statements_cash_flows_unaud"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Consolidated Statements of Cash Flows (Unaudited) for the Three Months Ended March 31, 2025 and 2024</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;text-indent:25.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:2.267%;text-indent:-2.517%;padding-left:2.4%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#notes_to_consolidated_financial_statemen"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Notes to Consolidated Financial Statements</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_1_nature_operations_basis_presentat"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 1 - Basis of Presentation</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_2_restricted_cash"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 2 - Restricted Cash</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">9</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_3_contract_receivables_net"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 3 - Contract Receivables, Net</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">9</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_4_leases"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 4 - Leases</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_5_debt"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 5 - Debt</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">12</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_6_revenue_recognition"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 6 - Revenue Recognition</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">12</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_7_derivative_instruments_and_hedge"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 7 - Derivative Instruments and Hedging Activities</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_8_income_taxes"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 8 - Income Taxes</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_9_stockholders_equity"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 9 - Stockholders' Equity</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_10_stockbased_awards"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 10 - Stock-Based Compensation</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_11_business_combinations"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 11 - Acquisitions and Divestitures</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_11_earnings_per_share"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 12 - Earnings Per Share</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_12_fair_value"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 13 - Fair Value</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">17</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_13_commitments_contingencies"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 14 - Commitments and Contingencies</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">17</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;text-indent:36pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6.667%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#note_15_segment_information"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Note 15 - Segment Information</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">17</span></p></td>
    </tr>
    <tr style="white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 2.</span></p></td>
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_2___managements_discussion_analysis"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">19</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 3.</span></p></td>
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_3___quantitative_qualitative_disclo"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Quantitative and Qualitative Disclosures About Market Risk</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 4.</span></p></td>
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_4___controls_procedures"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Controls and Procedures</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td colspan="2" style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#part_ii_or_information"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">PART II. OTHER INFORMATION</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 1.</span></p></td>
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_1___legal_proceedings_"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Legal Proceedings</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 1A.</span></p></td>
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_1a_risk_factors_"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Risk Factors</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 2.</span></p></td>
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_2___unregistered_sales_equity_secur"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Unregistered Sales of Equity Securities, Use of Proceeds, and Issuer Purchases of Equity Securities</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 3.</span></p></td>
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_3___defaults_upon_senior_securities"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Defaults Upon Senior Securities</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 4.</span></p></td>
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_4___mine_safety_disclosures_"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Mine Safety Disclosures</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 5.</span></p></td>
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_5___or_information_"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other Information</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
   </table></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;">
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:8%;box-sizing:content-box;"/>
     <td style="width:87%;box-sizing:content-box;"/>
     <td style="width:5%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 6.</span></p></td>
     <td style="padding-top:0in;text-indent:13.2pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="text-indent:-2.501%;padding-left:2.44%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_6_exhibits_"><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Exhibits</span></a></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27</span></p></td>
    </tr>
   </table></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="part_i_financial_information"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">PART I. FINANCI</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">AL INFORMATION</span></p><p style="text-indent:-9.971%;padding-left:9.067%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_1___financial_statements_"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Item 1.	Fina</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">ncial Statements</span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ICF International, Inc. and Subsidiaries</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_balance_sheets"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">CONSOLIDATED B</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ALANCE SHEETS<br/>(UNAUDITED)</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:62.833%;box-sizing:content-box;"/>
     <td style="width:1.94%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:14.643%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1.94%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:14.643%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands, except share and per share amounts)</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">ASSETS</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Current Assets:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash and cash equivalents</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fcbdd999-a123-4fef-8ba0-13ef0a02d115" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,718</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0eff0d86-03b8-4997-83c5-8d4bd4fb580f" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,960</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Restricted cash</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b1b9c7e8-80f7-4cfc-a04b-5c74906824d9" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:RestrictedCashCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,374</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f6aac732-d52e-4ac1-8623-b24d91a115fd" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:RestrictedCashCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,857</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract receivables, net</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d9d3ef89-e4c8-444f-960c-0b2461350495" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:AccountsReceivableNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">236,161</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b962e026-a2ba-4210-86ed-a19c528f4a80" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:AccountsReceivableNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">256,923</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract assets</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e72fcefb-9fe2-4e16-a7bf-989eb1191b94" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:ContractWithCustomerAssetNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">228,314</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5ef4e9bd-5450-45bc-94cf-a06806d7919a" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:ContractWithCustomerAssetNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">188,941</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7019d666-ced4-4fe1-90ee-a994ba799571" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,189</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_90aff5fe-cdf2-4115-b7d4-387ac8c3d869" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,133</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income tax receivable</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4be73d95-f4b4-463f-823b-2d6c3d269c1b" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:IncomeTaxesReceivable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,073</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f8a7d689-a76a-427f-a84a-7d82412f5608" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:IncomeTaxesReceivable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,260</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total Current Assets</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d5767877-56ec-4aa6-b7d6-e2b19752c45f" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:AssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">510,829</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c99856d8-c130-444e-af53-a2d64e79c8fb" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:AssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">492,074</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Property and Equipment, net</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0239f269-386e-40aa-b7b2-f8e43f709899" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">63,569</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_eeae54c8-95a4-42b3-b09a-83c5f8eca937" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">66,503</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Other Assets:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Goodwill</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_aac0863c-3a93-46e8-a108-21836edd57a0" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:Goodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,251,199</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_55f002e7-a823-4431-8a23-37005e4bebdf" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:Goodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,248,855</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other intangible assets, net</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f92ea565-58a6-4f1d-84d6-5621a6894ef5" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">102,617</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_973d5fcc-ff07-4983-b0b3-4bc6f741f8b5" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">111,701</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease - right-of-use assets</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_454b31db-6d23-4787-ba34-fb023e271ca2" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:OperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">112,954</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a9e6fbf2-eded-41f4-be55-54dbb70c8855" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:OperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">115,531</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Deferred tax assets</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c2961c3c-c365-491b-9c38-e3f565c66c3e" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:DeferredIncomeTaxAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,113</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e3ae5edd-0529-499a-b88a-79386189c3f1" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:DeferredIncomeTaxAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,603</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other assets</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c580c3d7-2bfb-4a7c-b942-ba057accfa12" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:OtherAssetsNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">29,817</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_09b5c3ab-5ae3-4222-bfa4-da1ecbf029e4" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:OtherAssetsNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30,086</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total Assets</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e7a71cdf-3f3a-4171-96bc-70b235aca08c" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,075,098</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_de51bf93-e284-404e-b4fc-99353da6f839" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,066,353</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">LIABILITIES AND STOCKHOLDERS&#8217; EQUITY</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Current Liabilities:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accounts payable</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_93e4323a-70b1-4631-9590-3d9b75f4aa2e" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:AccountsPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">122,089</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_995ab5fd-ac5c-47f9-9fbe-106258bbfa7c" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:AccountsPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">159,522</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract liabilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_33ef185f-6c8a-4467-ac9d-899456177865" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:ContractWithCustomerLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27,407</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6d3f7426-093b-4943-807e-b1becf54d4e5" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:ContractWithCustomerLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24,580</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease liabilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6543d013-9138-4b5f-850f-bf873c38fd2f" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:OperatingLeaseLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,792</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_de245f7c-7698-462e-9ccc-59c048355685" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:OperatingLeaseLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">20,721</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Finance lease liabilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b72f03ed-67de-4f27-b344-db9b4fc6a083" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,635</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0537e1e7-ea21-4d86-8dc3-fd3f97096dc6" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:FinanceLeaseLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,612</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued salaries and benefits</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_012969bd-9673-46ff-92ff-ba46f704b73a" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">75,533</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1a335cef-3290-40f7-b841-5a44ad0826e5" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">105,773</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued subcontractors and other direct costs</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4e19de0b-b5aa-4f9d-9e80-af700cea8e36" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="icfi:AccruedSubcontractorAndOtherDirectCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">51,876</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8caa0b4d-ebde-442a-870d-3f660ba13261" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="icfi:AccruedSubcontractorAndOtherDirectCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">49,271</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_64f91831-0b3d-4507-a335-9ca596ab50e4" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:AccruedLiabilitiesAndOtherLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">82,195</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_00a3cc63-6aca-485c-a435-474d61333bc3" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:AccruedLiabilitiesAndOtherLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">86,701</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total Current Liabilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_441e03b9-7094-411b-a35f-a0cfb730ea9a" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">381,527</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6174dcc7-0721-49c2-b1dd-16837939bd12" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:LiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">449,180</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Long-term Liabilities:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Long-term debt</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e9ae2a55-8cb3-47fa-b848-117db7fb79fd" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LongTermDebtNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">502,044</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0fb1d57d-db67-4bfe-ac46-7e91be8c597f" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:LongTermDebtNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">411,743</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease liabilities - non-current</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_918c7d8a-fb7e-4aed-af41-31e00353bab1" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:OperatingLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">152,128</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4c510c72-ebe2-4194-bbc6-9243fbb4a4bd" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:OperatingLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">155,935</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Finance lease liabilities - non-current</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_40a4b22f-35b0-4c03-9b6f-de9a91d17324" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,593</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_246db5bc-4b8e-4fcc-b5f1-731c2a9280a6" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:FinanceLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,261</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other long-term liabilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_808df2ce-9ebb-4fd1-8f5e-7b4b55db995a" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:OtherLiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">59,938</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e92d1fe7-4e4c-4688-844d-e91b6cb919f1" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:OtherLiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">55,775</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total Liabilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d5e3a916-37ae-4fd7-9839-981b020076e0" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:Liabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,106,230</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b7d18004-4abd-4685-bdf8-0ca449fb4918" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:Liabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,083,894</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8.5pt;"><span style="-sec-ix-hidden:F_9c559757-bc65-4589-ae50-c0a77fd69d77;"><span style="-sec-ix-hidden:F_ee43ac49-a3cd-4af1-8ed3-2f5bfb4944df;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Commitments and Contingencies (Note 14)</span></span></span></span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Stockholders&#8217; Equity:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">Preferred stock, par value $</span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e39bd724-f053-41b0-907c-97c1fbc17500" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:PreferredStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" decimals="INF"><ix:nonFraction id="F_043d18d0-628d-4747-9d27-99237bbedeb7" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:PreferredStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" decimals="INF">.001</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">; </span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d2f84f31-4d30-4c2e-8fcf-268a15ef0519" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:PreferredStockSharesAuthorized" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_06604e80-4073-4df4-b996-870c14b3e149" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:PreferredStockSharesAuthorized" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">5,000,000</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">&#160;shares authorized; </span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_84270303-8d9a-40cd-9941-1bffba9b7ced" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:PreferredStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_41012742-f681-4dd3-b9bb-67f4aebff067" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:PreferredStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen">none</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">&#160;issued</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;"><span style="-sec-ix-hidden:F_eb3ab4f9-87f2-4ded-b488-8d1d3c1a58a1;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></span></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;"><span style="-sec-ix-hidden:F_2dcda0c3-bb48-42ae-b1b4-c6a8ae022af9;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></span></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">Common stock, par value $</span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e3a2f1f0-f0a4-4260-b5d8-7749ad75d12d" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:CommonStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" decimals="INF"><ix:nonFraction id="F_57a3ae75-1bf0-4c59-be93-72c20cf5a6bb" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:CommonStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" decimals="INF">.001</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">; </span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_68de6ee0-e460-45bd-bde8-f4495392b033" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:CommonStockSharesAuthorized" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_c602a1a6-97d9-4363-9b5f-71c15bdf59c2" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:CommonStockSharesAuthorized" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">70,000,000</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">&#160;shares authorized; </span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f521a372-862d-4034-bb06-b984a045be5d" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:CommonStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">24,302,825</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">&#160;and </span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bfea70aa-d02a-4965-86d9-020a1cef535a" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:CommonStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">24,186,962</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">&#160;shares issued at March 31, 2025 and December 31, 2024, respectively; </span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bed568c2-6549-45a2-9f5f-ce476fefeae8" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">18,426,295</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">&#160;and </span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_942b90a5-6878-4618-addf-c011af31d592" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">18,666,290</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">&#160;shares outstanding at March 31, 2025 and December 31, 2024, respectively</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e2940508-d28f-4798-a7d8-06859d40af2a" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:CommonStockValue" unitRef="U_USD" scale="3" decimals="-3">24</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9ba54976-31f5-44f7-af88-74ede90199c1" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:CommonStockValue" unitRef="U_USD" scale="3" decimals="-3">24</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Additional paid-in capital</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2914b6d9-6ee3-42b7-a859-c93d9195a833" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:AdditionalPaidInCapitalCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">447,649</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2016490a-d844-4b85-9848-6da7ac955139" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:AdditionalPaidInCapitalCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">443,463</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Retained earnings</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d426c254-0190-4ad2-a1e5-0744c83caa9a" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:RetainedEarningsAccumulatedDeficit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">899,051</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e10e4119-d1e4-4531-9425-fb63d4791d79" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:RetainedEarningsAccumulatedDeficit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">874,772</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">Treasury stock, </span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6ea2a697-6ecf-416d-9484-53bcac682312" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">5,876,530</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">&#160;and </span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e305c094-e074-4ac5-af0c-17a4627cb1d5" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">5,520,672</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">&#160;shares at March 31, 2025 and December 31, 2024, respectively</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_63d854e2-bf3b-44e9-8b6c-4b335d90c57a" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:TreasuryStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">359,397</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_da4c20b2-f5f0-42de-887c-1f5ddd41af38" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:TreasuryStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">320,054</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive loss</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c3fa1bc8-ebda-4ee7-9048-4ff391a1cefe" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">18,459</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8.5pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_613882e9-101f-444a-ba15-977bb3048f35" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">15,746</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total Stockholders&#8217; Equity</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bbec81d4-8480-434b-ac99-819fdb521090" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">968,868</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0ced7c58-f71d-46cb-ad3d-46804d2c0cd7" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">982,459</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total Liabilities and Stockholders&#8217; Equity</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5db0aeea-5199-402a-8c84-23cdadb80384" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LiabilitiesAndStockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,075,098</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8.5pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_65c7dbc1-b2f6-4dce-a72a-55b6eb1acd21" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:LiabilitiesAndStockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,066,353</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">The accompanying notes are an integral part of these consolidated financial statements.</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">4</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ICF International, Inc. and Subsidiaries</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_statements_comprehensive_in"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">CONSOLIDATED STATEMENTS OF COM</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">PREHENSIVE INCOME</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(UNAUDITED)</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:52.911%;box-sizing:content-box;"/>
     <td style="width:2.46%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:19.084%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:2.46%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:19.084%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands, except per share amounts)</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Revenue</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_03608fe9-cc2d-4c2d-be4b-c5f3edfa4cd1" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">487,618</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cae58827-3877-4799-92f1-862a4dd4104d" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">494,436</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Direct Costs</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5341a53c-c8b7-4ace-a6b9-b80a12450682" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:CostOfGoodsAndServicesSold" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">302,542</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bfbce675-4269-4ad9-a376-353d81c7f758" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:CostOfGoodsAndServicesSold" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">310,533</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating costs and expenses:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Indirect and selling expenses</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_70e5b5ae-9229-454d-ba8e-9c564982a994" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:SellingGeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">131,891</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_28daa283-aee2-4916-951a-21a28b17b819" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:SellingGeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">129,094</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Depreciation and amortization</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2e6b7d05-9701-4af7-b09c-f91681f71ebe" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:DepreciationAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,795</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_28d38807-1916-4733-be45-7aa67648def3" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:DepreciationAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,865</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total operating costs and expenses</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7c818445-e8eb-4822-8be1-41b044177db1" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:OperatingExpenses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">146,686</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c1b4eb87-4fe6-4a6e-8045-b1d670772ce1" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:OperatingExpenses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">142,959</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating income</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2c66fa79-309e-4290-82e5-c56503a93a9a" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">38,390</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8c5fba8c-2ac8-45c5-8b68-9b8c4421e919" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">40,944</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest, net</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c3c84169-8aa6-45f6-a712-4d29dc1951be" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:InterestIncomeExpenseNet" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">7,337</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ddd62010-5212-44de-9731-cb15b9c610a0" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:InterestIncomeExpenseNet" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">8,238</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other (expense) income</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0385d566-8939-486d-b9e4-19e08e6367e9" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:OtherNonoperatingIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,052</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_adaac1e8-944d-4c7e-9065-4be11067df43" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:OtherNonoperatingIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,630</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income before income taxes</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d3c13641-4d46-41ae-8332-6416ef262a01" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30,001</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6bcf755d-3ec2-4b1a-b8dd-5ab745bb82ca" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">34,336</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provision for income taxes</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fbd14fa3-7a04-41c3-9c97-bf7eb4ac196a" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,150</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_95e247bd-72ff-4518-ac58-ba967be06f8b" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,019</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net income</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7bdb6c54-5561-4092-b7d9-270587997714" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">26,851</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e247c28d-2a2e-4375-b84a-012ab921969a" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27,317</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Earnings per Share:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e60ec8b6-0575-44c2-8a9e-e8cf48c691c9" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.45</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f0c75500-f258-4839-bfa3-3d1223dda8c6" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.46</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8e5b980c-3e19-43ce-800a-0601c0617eb4" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.44</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d467671b-9d7e-41be-b586-7a0d9a7e6241" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.44</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Weighted-average Shares:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_10f41a0a-8674-4181-aac6-6fcb4c604e61" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,506</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_035db752-32e3-47aa-be27-75cebd422dcd" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,757</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a5725478-bf9a-474f-bedb-0f6f27fb42cc" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,613</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ac9b60c6-88aa-4e23-a9d9-f6d435b405ca" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,946</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash dividends declared per common share</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a11b5e9a-385b-4339-b11e-ec94b2fd2089" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:CommonStockDividendsPerShareDeclared" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.14</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_67f0aa0d-7454-4bb2-87f4-388a2b3f6de2" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:CommonStockDividendsPerShareDeclared" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.14</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other comprehensive (loss) income, net of tax</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_05ab22df-9f6b-4faf-9f29-6381f437ec31" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,713</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5f4ed4fe-eb46-4510-ab04-cecbcfe5d4ab" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">684</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Comprehensive income, net of tax</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_06522b14-4ffc-41c6-b850-f6c88deb4776" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ComprehensiveIncomeNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24,138</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2ae3bd7f-3110-415c-a3c8-8eeeac916fe0" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ComprehensiveIncomeNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">28,001</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">The accompanying notes are an integral part of these consolidated financial statements.</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">5</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ICF International, Inc. and Subsidiaries</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">CONSOLIDATED STATEMENTS OF STOCKHOLDERS&#8217; EQUITY</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_stockholders_equity"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(UNAU</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">DITED)</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:29.466%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:6.081%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:5.661%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:5.661%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:5.241%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:6.081%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:5.661%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:6.421%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:5.721%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Common Stock</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Additional<br/>Paid-in</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Retained</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Treasury Stock</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Accumulated<br/>Other<br/>Comprehensive</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands)</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Capital</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Earnings</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Loss</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Balance at January 1, 2025</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_be8669f0-4111-442b-8657-812bc9fa2cc9" contextRef="C_8ba1e5ce-0ade-429a-81fc-2cd9a86f9ff5" name="us-gaap:SharesIssued" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,666</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_38cdf401-fcca-4c24-a0ac-f549792d66e5" contextRef="C_8ba1e5ce-0ade-429a-81fc-2cd9a86f9ff5" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2232aff0-ac2d-401e-a07a-e4de07c54ba0" contextRef="C_66f8e428-8207-46f0-88a4-c65a674fe7ae" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">443,463</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f0ddad19-d851-4bfc-a197-ac9760ea017a" contextRef="C_3f84f106-4922-459f-801e-6ed142bd4871" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">874,772</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a216e4f0-c238-4da0-a0d6-961d9605347c" contextRef="C_fe0b1ad2-b71a-4e78-9ac4-f77948118549" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,520</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_edde6e0e-c4d9-4e71-87d3-cb342f8f0873" contextRef="C_fe0b1ad2-b71a-4e78-9ac4-f77948118549" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">320,054</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3490214a-4e17-4ce4-864b-5988b4a5b679" contextRef="C_b476051d-acdb-427d-8f5d-2aebbd684943" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">15,746</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7750aa7b-1cf4-412e-bd7c-6dcc74dcedb9" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">982,459</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Net income</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e7fa2d22-7bce-448e-b702-4fd9b8dfd88a" contextRef="C_01114fe7-639c-42b3-8fb0-57f413ff7531" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">26,851</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f469a2f5-7a6f-42d6-beca-db7b628f58a9" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">26,851</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Other comprehensive loss</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0b871979-a948-4863-83c1-3b19356fa796" contextRef="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,713</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_19e7929e-d883-4326-a892-a1e355cf33cb" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,713</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Equity compensation</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9082e644-be9f-4f53-a664-87957228d4b2" contextRef="C_0ff21424-dcea-468a-90db-f97547236a4a" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,186</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_14dbb50a-cd07-4a82-852a-ec77efc21371" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,186</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Issuance of shares pursuant to vesting of restricted stock units</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_02826901-72cb-4255-8e65-d0b9b89cd275" contextRef="C_865abbb8-e708-4843-ad99-843c3e51718a" name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">116</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Payments for share repurchases</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b9de610c-3f44-4ef4-8db3-705ed42ad4f4" contextRef="C_865abbb8-e708-4843-ad99-843c3e51718a" name="icfi:PaymentsForShareRepurchasesShares" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">356</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_20f155ea-fc58-4efc-afc9-6271f353ac51" contextRef="C_24d7c4dc-b654-4bda-ae79-a5943705570e" name="icfi:PaymentsForShareRepurchasesShares" unitRef="U_shares" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">356</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ae64c800-2e8f-4837-9e00-6c839209d115" contextRef="C_24d7c4dc-b654-4bda-ae79-a5943705570e" name="icfi:PaymentsForShareRepurchasesValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">39,343</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6d8df767-5cf0-4d81-bc56-94c7d18db0d7" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:PaymentsForShareRepurchasesValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">39,343</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Dividends declared</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_39b97dc2-ca7e-4645-bcbc-a2f76f6cba5b" contextRef="C_01114fe7-639c-42b3-8fb0-57f413ff7531" name="us-gaap:DividendsCommonStockCash" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,572</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3a012b4a-6986-4288-8482-07d2461b1064" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:DividendsCommonStockCash" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,572</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Balance at March 31, 2025</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_907a47b8-7806-4ad0-bb63-299726200852" contextRef="C_177f9582-c387-46b3-b057-848b45730ee7" name="us-gaap:SharesIssued" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,426</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4cb1433b-2a47-4d95-8855-e1d1267aa260" contextRef="C_177f9582-c387-46b3-b057-848b45730ee7" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7bdb5b1d-3336-4644-86e1-88822cf546e4" contextRef="C_89503513-13c5-4f37-a7ec-8d25384954ec" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">447,649</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_22a681a0-c880-46e4-ae57-52dd0f27ebce" contextRef="C_b51ff012-0999-41e8-aabc-a805309158c0" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">899,051</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9497cebd-69ba-4fbc-a8bd-99186398b3b8" contextRef="C_2feac70a-551b-436a-ab31-e3597195f9b5" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,876</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4cf6e6de-7d60-4af9-af7a-be833cf541b3" contextRef="C_2feac70a-551b-436a-ab31-e3597195f9b5" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">359,397</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9e741591-4e18-43de-bbc3-1e2c60464b5a" contextRef="C_03f68630-29e5-4ea8-ae0e-5ea8d827f734" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">18,459</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_81e956fd-e5c1-498c-a59c-70787f15d210" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">968,868</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:29.466%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:6.081%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:5.661%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:5.661%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:5.241%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:6.081%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:5.661%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:6.421%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:5.721%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Common Stock</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Additional<br/>Paid-in</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Retained</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Treasury Stock</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Accumulated<br/>Other<br/>Comprehensive</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands)</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Capital</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Earnings</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Loss</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Balance at January 1, 2024</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_44f877ce-5a12-45c9-a76e-8d786d215e26" contextRef="C_0c85ec78-5db4-47b1-a9f7-65ad9cd5f819" name="us-gaap:SharesIssued" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,846</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bc81f3e9-59f6-4883-99c5-8d73624799b1" contextRef="C_0c85ec78-5db4-47b1-a9f7-65ad9cd5f819" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_12e78f6d-93d3-4329-8216-66f74c36c17b" contextRef="C_1249add0-8323-452e-a930-09fedf84c6b2" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">421,502</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_556a81b8-5623-4fa7-9968-e2049b0e09ac" contextRef="C_0ce63ddf-f2f4-449a-b8a8-898af6c132f6" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">775,099</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8365519c-f65b-4abd-add4-06998453b9b5" contextRef="C_43d13fc6-f869-4369-a3d2-252c2f7fb342" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,136</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_23d1ed74-5b02-450b-ab21-524988fbcf2f" contextRef="C_43d13fc6-f869-4369-a3d2-252c2f7fb342" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">267,155</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8b7c1db9-5065-49fd-ab5f-79582e8fde9a" contextRef="C_6fac847c-8078-41ea-89da-f86c78130f0b" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">11,885</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_31e9a210-9152-4efd-ad84-d3ed918a9ed0" contextRef="C_65a9caf8-af7b-40d9-b7fe-4e88d11370da" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">917,585</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Net income</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_eaf70c69-459b-406d-a95e-107f4e67d4da" contextRef="C_40da89d2-3f28-4ad2-a4ca-560892ef9004" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27,317</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d259a63c-2d5f-439d-8d5f-afaa7e709d26" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27,317</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Other comprehensive income</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c59fa754-1ca2-4300-873b-9d92d7c6a8c6" contextRef="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">684</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7413eab4-69ce-46db-b03f-86d7e6ce0bad" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">684</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Equity compensation</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ea74d162-b5f5-423b-8c57-7ca74b46af34" contextRef="C_e4643d4e-157a-47eb-9768-5f96b6d3c932" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,551</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_10aa68da-7814-470f-bb2a-d1ffdfba3293" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,551</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Exercise of stock options</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_15087fc0-3d82-4c55-b7d1-ef90b118abad" contextRef="C_c98a0507-2ef5-4b6b-8ea9-9cfc334c9a9d" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">2</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5057cf6b-3eda-4ffc-978f-633056a14db6" contextRef="C_e4643d4e-157a-47eb-9768-5f96b6d3c932" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">107</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_94882c3f-94d5-40d4-a43e-4cfe0e375ae6" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">107</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Issuance of shares pursuant to vesting of <br/>&#160;&#160;&#160;restricted stock units</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_93fa6bd2-5897-448c-a1a5-d4d1850229fa" contextRef="C_c98a0507-2ef5-4b6b-8ea9-9cfc334c9a9d" name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">125</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Payments for share repurchases</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7bf575c0-0a3e-4f9b-aa48-5f108da3de9b" contextRef="C_c98a0507-2ef5-4b6b-8ea9-9cfc334c9a9d" name="icfi:PaymentsForShareRepurchasesShares" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">218</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_778bd90e-4d51-47e1-888f-d518d94fa6d5" contextRef="C_a9e36dfd-af68-4475-98ec-59ec73e3a0f2" name="icfi:PaymentsForShareRepurchasesShares" unitRef="U_shares" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">218</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8099b898-c50a-4cee-9fe4-73fd175b0960" contextRef="C_a9e36dfd-af68-4475-98ec-59ec73e3a0f2" name="icfi:PaymentsForShareRepurchasesValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30,475</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_af7d74fe-a1fd-4ffe-b44f-128e3f333664" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="icfi:PaymentsForShareRepurchasesValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30,475</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Dividends declared</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_054e3463-69e6-4277-a072-7114fc264b78" contextRef="C_40da89d2-3f28-4ad2-a4ca-560892ef9004" name="us-gaap:DividendsCommonStockCash" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,620</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6ccd082f-b441-4a10-98d9-4368d045cd7e" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:DividendsCommonStockCash" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,620</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Balance at March 31, 2024</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6d3312d7-de15-4e4d-9c72-653609193ba6" contextRef="C_d59e7f6c-6be0-4dc7-8e33-a47e421cfef9" name="us-gaap:SharesIssued" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,755</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f28c0c18-2f44-4860-92d7-3fa1b5ca9737" contextRef="C_d59e7f6c-6be0-4dc7-8e33-a47e421cfef9" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f83021d4-d20d-4cdd-8b4e-658e98d68767" contextRef="C_79dbce0a-82e1-44a9-bdea-504fd0b91ca4" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">425,160</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_71ebcf9a-9ef2-4f92-9254-11c986b07059" contextRef="C_c881ed46-ad82-4505-b406-f06c9b93a2f7" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">799,796</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4ae9240a-bc2c-46b0-a7bc-47f86611fc64" contextRef="C_8648b851-e7ef-4502-951a-ff9c4226a64d" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,354</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3f5bb838-d074-4f19-bac4-5584d9a41438" contextRef="C_8648b851-e7ef-4502-951a-ff9c4226a64d" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">297,630</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ffe360ea-eb3b-4e12-94ea-02f75365809c" contextRef="C_3b951961-6572-4dbd-a007-2443f0726987" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">11,201</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_dd0d2067-1903-4fb1-b306-c920f722992d" contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">916,149</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">The accompanying notes are an integral part of these consolidated financial statements.</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">6</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ICF International, Inc. and Subsidiaries</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_statements_cash_flows_unaud"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">CONSOLIDATED STATEMENTS O</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">F CASH FLOWS</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(UNAUDITED)</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:67.2%;box-sizing:content-box;"/>
     <td style="width:1.62%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:12.98%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:13.2%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands)</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Cash Flows from Operating Activities</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net income</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_49e9a160-9976-4be0-a1fd-5c483d88492b" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ProfitLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">26,851</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_36cd547c-f9ea-47d0-bfbc-6f9f3724c1d6" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ProfitLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27,317</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Adjustments to reconcile net income to net cash provided by operating activities:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provision for credit losses</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4986c7b5-0734-4846-ab75-bd00a6998ba0" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ProvisionForOtherCreditLosses" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">92</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6e7e172a-befa-4661-b4f4-4b976eec9bf3" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ProvisionForOtherCreditLosses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,347</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Deferred income taxes and unrecognized income tax benefits</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_82f35f2b-9606-4b0b-8866-77524802108e" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,594</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b6f3e1a2-cc99-4636-b18b-e4b2a19d31b1" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="icfi:IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,786</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Non-cash equity compensation</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3577ae86-57ce-4ae0-90da-a2b8efc1e567" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,186</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_61d26fc0-9dc7-4132-b24d-a273ab9d7fe8" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,551</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Depreciation and amortization</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fb8ec488-34b2-44e1-973f-0a0ebc44f21f" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,795</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c8e9463e-3966-48a7-be48-4b5b062f3152" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,865</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Gain on divestiture of a business</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0fbd5699-12a5-4eb3-9ca2-4bbc8f7430f1" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:GainLossOnSaleOfBusiness" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5ec77d1e-c288-4865-a945-637ce3a3aa86" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:GainLossOnSaleOfBusiness" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,715</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other operating adjustments, net</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f9817a1f-c86b-45c7-9a96-c43cc41476c7" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:OtherNoncashIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,435</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0d36232c-01f1-47b2-ab9a-e4f286f6deeb" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:OtherNoncashIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">46</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Changes in operating assets and liabilities, net of the effects of acquisitions:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:5.56%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net contract assets and liabilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f3e54985-56e5-446e-8bc5-467b16731d0c" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">34,610</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_983b567b-d464-4720-9d46-98d23496555a" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">29,024</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:5.56%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract receivables</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0c67630c-b364-41eb-bd45-52a0f9bcf3d4" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncreaseDecreaseInReceivables" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">21,340</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9ac6fb1f-852c-4d69-bac9-2f013782024e" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncreaseDecreaseInReceivables" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,604</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:5.56%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_23085c8f-2b63-4bb2-b10e-ab86f57bf7ce" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,314</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2e2f9c51-3efb-4c89-9c9e-826cafb412d0" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">192</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:5.56%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease assets and liabilities, net</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d36c8050-3001-4daa-bffe-6ed1ea6adc04" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,862</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1a09e635-b35a-43fc-9ec1-00b5e2829e98" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="icfi:IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">523</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:5.56%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accounts payable</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4fb30673-47b6-45da-ad71-0da3d4465324" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncreaseDecreaseInAccountsPayable" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">37,674</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_acdcfd54-e3b6-4e3a-8352-4e313ea5a3bf" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncreaseDecreaseInAccountsPayable" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">15,119</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:5.56%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued salaries and benefits</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1354e271-26f5-44d1-aec7-58b4ce3ac1a8" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">30,465</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0bd83159-f67e-4b3e-b884-13e290e45f9f" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">17,775</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:5.56%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued subcontractors and other direct costs</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a9e85eff-d17f-4d34-8ff9-b76be37b3ec1" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,064</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_40e3784e-52cb-47f5-b0ef-30df5405d186" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="icfi:IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,303</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:5.56%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4642278e-4648-4656-9dca-2bf300806c98" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">80</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9e86144e-20cd-4741-b458-bf763b50a576" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,988</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:5.56%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income tax receivable and payable</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7ec35f72-b9dd-486a-a616-bb87e22188cf" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,235</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0e036834-e222-470d-8acb-3f4dcc7dab4d" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,375</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:5.56%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other liabilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_83f71da6-3020-457f-9ed1-75743f422bf9" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncreaseDecreaseInOtherOperatingLiabilities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">409</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2391007d-d32f-4950-b2aa-0aa33e87fd9f" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncreaseDecreaseInOtherOperatingLiabilities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">333</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net Cash Used in Operating Activities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b8e3dd86-5588-45bf-be5b-8253695a2e22" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">33,034</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_764eada0-501e-4dc5-a58c-9af8871f0a51" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">10,001</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Cash Flows from Investing Activities</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Payments for purchase of property and equipment and capitalized software</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_953a0704-8023-47ec-9630-4b20560d9683" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:PaymentsToAcquireProductiveAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,452</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fff371df-68d6-4901-a074-0062476d84db" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:PaymentsToAcquireProductiveAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,226</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Proceeds from divestiture of a business</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_60ad3251-bd70-4510-a605-efb94ec1b989" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ProceedsFromDivestitureOfBusinesses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_793bc8fa-079f-405d-a808-eabc872c80cc" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ProceedsFromDivestitureOfBusinesses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,715</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net Cash Used in Investing Activities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_823904a0-3ad1-4c87-85c8-fa0eb906ea03" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,452</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_116aa8fe-1ea9-4eac-b724-a9fcc46dd7fe" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,511</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Cash Flows from Financing Activities</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Advances from working capital facilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8d089b22-b2e2-46d4-b9d1-a28eff5376e8" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ProceedsFromBankDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">512,430</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_20aa3a0e-6e32-4417-aa17-1f23c11991c2" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ProceedsFromBankDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">355,877</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Payments on working capital facilities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cc3a53f0-47a4-4832-bd3e-0d45a078fd61" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:RepaymentsOfLongTermDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">422,406</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_db125eb9-b6ef-4d16-b923-935387675ddc" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:RepaymentsOfLongTermDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">311,813</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Proceeds from other short-term borrowings</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_370e7aa9-a8a9-4d77-9677-2ebea3769d1c" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ProceedsFromOtherShortTermDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,780</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9b6c3ee7-1e47-422b-a53d-bc116eb18a64" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ProceedsFromOtherShortTermDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24,356</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Repayments of other short-term borrowings</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_dd354dd0-1772-48cf-be74-67727fcc3423" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:RepaymentsOfOtherShortTermDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">9,172</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0e0a21d0-56ba-489a-9bdc-e29e3deee231" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:RepaymentsOfOtherShortTermDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,950</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Receipt of restricted contract funds</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b237b977-b43a-4884-aa74-de7893eef05c" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:ProceedsFromRestrictedContractFunds" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5843a4e5-01d5-4c77-b3ba-586e141c4f01" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="icfi:ProceedsFromRestrictedContractFunds" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,261</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Payment of restricted contract funds</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b8a74e41-e7b4-4a6b-b504-6ddb92356171" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:RepaymentsOfRestrictedContractFunds" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f78e1a99-06e6-40bb-ae8e-327e3aa90ff8" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="icfi:RepaymentsOfRestrictedContractFunds" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,391</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Dividends paid</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8618de1d-ccc6-4d19-9705-30ef8e41d5b6" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:PaymentsOfDividendsCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,620</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5813d821-46c0-4a6d-90ce-6cbd2e418018" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:PaymentsOfDividendsCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,636</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net payments for stock issuances and share repurchases</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0dbc41de-d4e6-4fe5-bc68-8d389843ddef" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:PaymentsForRepurchaseOfEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">39,342</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c534bca3-31a6-415c-a4eb-e38052ddebb2" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:PaymentsForRepurchaseOfEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30,355</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other financing, net</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_be9a552d-c49c-4e07-a42d-8fea17759431" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ProceedsFromPaymentsForOtherFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">646</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_93872f31-f594-417f-8089-6ad927d91017" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ProceedsFromPaymentsForOtherFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">516</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net Cash Provided by Financing Activities</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e513eca2-d108-4131-8470-bb06e8e50996" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">41,024</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4f2f4147-e01f-41ef-be96-2d5e44296a19" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,833</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Effect of Exchange Rate Changes on Cash, Cash Equivalents, and Restricted Cash</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a22f3e34-8755-4fb1-b392-ff6664daf64f" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">737</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_62e985be-ab33-4d93-b034-3735dc657432" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">171</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net Change in Cash, Cash Equivalents, and Restricted Cash</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0bc51e09-cffe-4d6c-8f10-83c238b6ea00" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,275</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4fed5f60-a048-4ad2-82b6-e9b80a0275f9" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">4,850</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Cash, Cash Equivalents, and Restricted Cash, Beginning of Period</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1f4552cb-fdd2-4257-a4c5-ec2e00c4aa53" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,817</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2b6a8795-f705-4f16-a0bb-878741ea559c" contextRef="C_65a9caf8-af7b-40d9-b7fe-4e88d11370da" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">9,449</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Cash, Cash Equivalents, and Restricted Cash, End of Period</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3104c374-55a3-4f01-ab04-89b1484353b1" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24,092</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5396dd2b-571e-45d9-835a-46c6bb78680d" contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,599</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Supplemental Disclosure of Cash Flow Information</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash paid during the period for:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1aaf63b1-6009-4a68-a98d-d1bc050fdefd" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:InterestPaidNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,544</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_93eb2422-e33a-4aa8-8124-b876ef3c34e4" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:InterestPaidNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,740</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:3.707%;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income taxes</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b949dfc0-e7f8-4454-9129-5a005bac7660" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncomeTaxesPaid" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,095</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_916b0429-45c8-4093-89be-335cb43c45eb" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncomeTaxesPaid" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,133</ix:nonFraction></span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> The accompanying notes are an integral part of these consolidated financial statements.</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">7</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="notes_to_consolidated_financial_statemen"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Notes to Consolidated</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Financial Statements</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(Unaudited)</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(dollar amounts in tables in thousands, except share and per share data)</span></p><div><ix:nonNumeric id="F_1e82379f-567e-420f-bb08-c00ad8946190" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" escape="true" continuedAt="F_1e82379f-567e-420f-bb08-c00ad8946190_1"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_1_nature_operations_basis_presentat"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 1 &#8211; BASIS OF PRESENTATION</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_49a2e6b2-6c0b-40a2-b0c7-797e4d80f2fe" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Basis of Presentation</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The accompanying consolidated financial statements are of ICF International, Inc. (&#8220;ICFI&#8221;) and its principal subsidiary, ICF Consulting Group, Inc. (&#8220;Consulting,&#8221; and together with ICFI, the &#8220;Company&#8221;), and have been prepared in accordance with United States (&#8220;U.S.&#8221;) generally accepted accounting principles (&#8220;U.S. GAAP&#8221;). Consulting is a wholly owned subsidiary of ICFI. ICFI is a holding company with no operations or assets other than its investment in the common stock of Consulting. All other subsidiaries of the Company are wholly owned by Consulting. Intercompany transactions and balances have been eliminated. The terms &#8220;federal&#8221; or &#8220;federal government&#8221; refer to the U.S. federal government, and &#8220;state and local&#8221; or &#8220;state and local government&#8221; refer to U.S. state (including territories) and local governments, unless otherwise indicated.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Software assets, which were previously included within &#8220;Property and equipment, net&#8221; and &#8220;Other assets&#8221;, have been reclassified and consolidated under &#8220;Other intangible assets, net.&#8221; To conform to the current year&#8217;s presentation, $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9e79fbb4-eeb5-4230-8974-1c7d3350d8d3" contextRef="C_3bf23c7a-75e6-47a5-abfe-04e4efc6ca0c" name="us-gaap:CapitalizedComputerSoftwareNet" unitRef="U_USD" scale="3" decimals="-2" format="ixt:num-dot-decimal">1.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_033b2ce9-ef27-47c1-89b8-1513e1c7216b" contextRef="C_db216d59-a19f-49f7-a516-c41ffbd5721a" name="us-gaap:CapitalizedComputerSoftwareNet" unitRef="U_USD" scale="3" decimals="-2" format="ixt:num-dot-decimal">21.8</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, as of December 31, 2024, have been reclassified from &#8220;Property and equipment, net&#8221; and &#8220;Other assets&#8221; to &#8220;Other intangible assets, net,&#8221; respectively.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Previously separate financial statement line items &#8220;Depreciation and amortization&#8221; and &#8220;Amortization of intangible assets&#8221; have been combined under &#8220;Depreciation and amortization&#8221;.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_bfa381f8-3a68-414a-bc50-7eafa4d4240a" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:UseOfEstimates" escape="true"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Use of Estimates</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and the reported amounts of revenue and expenses. Key estimates include those that are related to variable consideration on contracts with customers, costs to complete fixed-price contracts, bonus and other incentive compensation, reserves for tax benefits and valuation allowances on deferred tax assets, collectability of receivables, valuation and useful lives of acquired tangible and intangible assets, impairment of goodwill and long-lived assets, and contingencies. Actual results experienced by the Company may differ from management&#8217;s estimates.</span></p></ix:nonNumeric></div><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Interim Results</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The unaudited consolidated financial statements included in this Quarterly Report on Form 10-Q have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the &#8220;SEC&#8221;). These rules and regulations permit some of the information and footnote disclosures normally included in annual financial statements, prepared in accordance with U.S. GAAP, to be condensed or omitted. In management&#8217;s opinion, the unaudited consolidated financial statements contain all adjustments that are of a normal recurring nature, necessary for a fair presentation of the results of operations and financial position of the Company for the interim periods presented. The Company reports operating results and financial data in </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2e016c17-0865-439e-9417-e9a8b420d126" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:NumberOfOperatingSegments" unitRef="U_Segment" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_62590f8a-14c8-442b-9477-4a5da67e7eed" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:NumberOfOperatingSegments" unitRef="U_Segment" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_b648a4b6-4dd7-43d9-9073-005cdc8393ef" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:NumberOfReportableSegments" unitRef="U_Segment" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_9a585ec3-c641-4e36-8cb9-deb7fc482039" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:NumberOfReportableSegments" unitRef="U_Segment" decimals="INF" format="ixt-sec:numwordsen">one</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> operating segment and reporting unit. Operating results for the three-month period ended </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024 are not necessarily indicative of the results that may be expected for the full year. These unaudited consolidated financial statements should be read in conjunction with the audited consolidated financial statements for the fiscal year ended December 31, 2024 and the notes thereto included in the Company&#8217;s Annual Report on Form 10-K.</span></p></ix:nonNumeric></div></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">8</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div><ix:continuation id="F_1e82379f-567e-420f-bb08-c00ad8946190_1"><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_2ea5c62c-0c46-4f7c-a5e3-c9fdf9991fb1" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Recent Accounting Pronouncements</span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Recent Accounting Pronouncements Not Yet Adopted</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Income Taxes</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In December 2023, the Financial Accounting Standards Board (the &#8220;FASB&#8221;) issued Accounting Standards Update (&#8220;ASU&#8221;) 2023-09, Income Taxes: Improvements to Income Tax Disclosures (&#8220;ASU 2023-09&#8221;), which requires greater disaggregation of income tax rates and amounts paid by entities. ASU 2023-09 specifically requires all entities to disclose, on an annual basis, disaggregated domestic and foreign pre-tax income or loss from continuing operations and the disaggregated income tax expense or benefit by federal, state, and foreign components, and a tabular rate reconciliation, using both percentages and reporting currency amounts, of eight specific categories as well as any individual reconciling items that are equal to or greater than 5% of a threshold computed by multiplying pretax income or loss from continuing operations by the applicable federal rate. Additionally, the amendments also require disclosure of income taxes paid disaggregated by federal, state, and foreign jurisdictions as well as any individual jurisdictions over 5% of the total income taxes paid. ASU 2023-09 will be effective for the Company for the fiscal year ending December 31, 2025, with early adoption permitted. The amendments may be adopted on a prospective or retrospective basis. The Company is expected to adopt the provisions of ASU 2023-09 for the fiscal year ending December 31, 2025 and, with the exception of additional footnote disclosures, does not expect the adoption to have any impact on the consolidated financial statements.</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Income Statement&#8212;Reporting Comprehensive Income&#8212;Expense Disaggregation Disclosures</span></p><p style="text-indent:6.667%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In November 2024, the FASB issued ASU 2024-03: Disaggregation of Income Statement Expenses (&#8220;ASU 2024-03&#8221;), which requires additional disaggregation of certain costs and expenses. ASU 2024-03 specifically requires all public entities to disclose within a tabular format the amounts of (a) purchases of inventory, (b) employee compensation, (c) depreciation, (d) intangible asset amortization, and (e) depreciation, depletion, and amortization recognized as part of oil- and gas-producing activities in each relevant expense caption as well as certain amounts that are already required to be disclosed under current U.S. GAAP. ASU 2024-03 also requires public entities to disclose a qualitative description of the composition of any amounts in relevant expense captions that are not separately disaggregated and the amount and definition of the entity&#8217;s selling expenses. ASU 2024-03 will be effective for the Company for the 2027 fiscal year and interim periods within the 2028 fiscal year, with early adoption permitted. The amendments may be adopted on a prospective or retrospective basis. The Company is currently evaluating the impact of the adoption of ASU 2024-03 and, with the exception of additional footnote disclosures, does not expect the adoption to have a material impact on the consolidated financial statements.</span></p></ix:nonNumeric></div></ix:continuation></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_df550bec-6863-48f7-9d78-318c89cedc44" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:CashAndCashEquivalentsDisclosureTextBlock" escape="true"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_2_restricted_cash"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 2 &#8211; RESTRICTED CASH</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_7a8f2150-91a4-4f15-9c0e-e9b501a7ec13" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ScheduleOfRestrictedCashAndCashEquivalentsTextBlock" escape="true"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table provides a reconciliation of cash, cash equivalents, and restricted cash as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024 to cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows for the three months ended March 31, 2025 and 2024:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:48.55%;box-sizing:content-box;"/>
         <td style="width:2.701%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:21.023999999999997%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:2.701%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:21.023999999999997%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash and cash equivalents</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fca6cf2d-4e17-401b-b0e0-b577fed8770c" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,718</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0fc26e71-94ef-400a-bf1f-b2f86d2e1ce8" contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,683</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Restricted cash</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3962fb25-1206-48ab-b36f-f973f4a5dfed" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:RestrictedCashCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,374</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_138eb22a-b817-4e46-a5e7-fd88d918489a" contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16" name="us-gaap:RestrictedCashCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">916</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total of cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ba55c4e2-3c9a-46c7-b50e-06d08dfc847c" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24,092</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2654c2c9-ee40-4cd9-8f10-f601877c657a" contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,599</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></ix:nonNumeric></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Restricted cash represents is primarily related to the Company&#8217;s energy incentive business with public utility clients and include restricted cash from the acquisition of Applied Energy Group, Inc. (&#8220;AEG&#8221;).</span></p></ix:nonNumeric></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div><ix:nonNumeric id="F_6ff537b8-0c2e-4b6d-9065-8efd05beac22" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" escape="true" continuedAt="F_6ff537b8-0c2e-4b6d-9065-8efd05beac22_1"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_3_contract_receivables_net"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 3 &#8211; CONTRACT RECEIVABLES, NET</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_4d381956-7471-4d6d-8d58-74e10f3956f3" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" escape="true"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Contract receivables, net consisted of the following:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:59.76%;box-sizing:content-box;"/>
         <td style="width:1.66%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:16.439999999999998%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.66%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:16.479999999999997%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Billed and billable</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_63861d01-b30b-42c1-a796-41bbcca29365" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:BilledContractReceivables" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">242,652</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1314f404-3542-4c5c-a4cb-0a63b9b8b9ea" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:BilledContractReceivables" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">263,624</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Allowance for expected credit losses</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e0152376-00d5-4e0c-94ad-f7ad2839f7d6" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,491</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c60007df-ad34-415b-a2c0-6c07351af7d0" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,701</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract receivables, net</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e76be4bc-343f-4d78-984c-c96faff23341" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:AccountsReceivableNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">236,161</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5e94724d-a2d3-4456-bb7c-db6f7e749dde" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:AccountsReceivableNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">256,923</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></ix:nonNumeric></div></ix:nonNumeric></div></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">9</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div><ix:continuation id="F_6ff537b8-0c2e-4b6d-9065-8efd05beac22_1"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company sells certain billed contract receivables in accordance with its Master Receivables Purchase Agreement with MUFG Bank, Ltd. (&#8220;MUFG&#8221;). </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_bbcef676-5644-481d-8a4c-86c98cc7d69e" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock" escape="true" continuedAt="F_bbcef676-5644-481d-8a4c-86c98cc7d69e_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following is a reconciliation of billed contract receivables sold to MUFG that were eligible and accounted for as sales under Accounting Standards Codification (&#8220;ASC&#8221;) 860, including billed contract receivables sold to MUFG and collected from customers on behalf of MUFG during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, and the balance of billed contract receivables not collected from customers as of March 31, 2025 and 2024, respectively:</span></ix:nonNumeric></span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_bbcef676-5644-481d-8a4c-86c98cc7d69e_1">
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:58%;box-sizing:content-box;"/>
         <td style="width:5%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:19.18%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:3%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:10.82%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">As of and for the Three Months Ended</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, billed contract receivables sold and not yet collected </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a6a82561-18d3-45b0-bc26-bc32efff5e49" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">25,966</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_26880c7c-3d42-4d8b-8eaa-e4814a2d93f3" contextRef="C_65a9caf8-af7b-40d9-b7fe-4e88d11370da" name="icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,302</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Billed contract receivables sold during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9c4f384d-7e45-404a-a6b0-35d78fc49e0f" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:AccountsReceivableSale" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">123,685</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5b7f5901-7b25-4a93-ac91-a24bf2d126a5" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:AccountsReceivableSale" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">133,398</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Collections from customers during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_857e7fd3-d582-4160-8381-a1b82785d932" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ProceedsFromAccountsReceivableSecuritization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">118,472</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2bff5b95-d60c-42a7-ad55-478c552d50a8" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ProceedsFromAccountsReceivableSecuritization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">129,824</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, billed contract receivables sold and not yet collected </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(3)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1afbfb38-878c-4001-b438-9812cb12ce15" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">31,179</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_86fbc746-81cf-4e5e-8582-8319bf618dfc" contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16" name="icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24,876</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_f9bca2f9-d335-4332-9735-5bde85ef9630" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The beginning balances represent billed contract receivables that were previously sold and derecognized by the Company but had not been collected from customers as of January 1, </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></ix:footnote></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_39ecc697-12f7-4baf-aba4-a924576f28e1" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_27f4a802-2cd1-4cab-bcae-3f830fd2a9f2" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:ProceedsFromSaleOfBilledContractReceivables" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">5.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c8749e5d-2414-4e8f-ada9-a9d7763b2e08" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="icfi:ProceedsFromSaleOfBilledContractReceivables" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">3.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the sale of billed contract receivables.</span></ix:footnote></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_d1332bc6-5fe5-4160-a3ef-ad6f13c8f985" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The ending balances represent billed contract receivables that were sold and derecognized by the Company but had not been collected from customers as of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></ix:footnote></div></div></ix:continuation></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_376a5247-e60f-4a6e-b15c-0f509d181527" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte" escape="true"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following is a reconciliation of cash collections from customers of billed contract receivables previously sold to MUFG that were eligible and accounted for as sales under ASC 860, including collections from customers on behalf of MUFG of previously sold billed contract receivables and remittances of cash collections to MUFG during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, and the balance of cash collected but not remitted to MUFG as of March 31, 2025 and 2024, respectively:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:53.551%;box-sizing:content-box;"/>
         <td style="width:2.3%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:15.203000000000001%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:2.3%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:22.645%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">As of and for the Three Months Ended</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, cash collected but not yet remitted to MUFG </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b4e90267-913a-4e8c-b65b-ae46f879eb8e" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="icfi:SaleOfReceivablesLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,339</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_508711e7-8990-4839-8515-eacdda51b6e1" contextRef="C_65a9caf8-af7b-40d9-b7fe-4e88d11370da" name="icfi:SaleOfReceivablesLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,796</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Collections from customers during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bee7fb91-6676-4b53-b526-4712034f6fbc" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ProceedsFromAccountsReceivableSecuritization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">118,472</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d5a2d9bb-706a-4a71-89db-8c1c1b3eb44d" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ProceedsFromAccountsReceivableSecuritization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">129,824</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Remittances to MUFG during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_dd449503-322b-4309-a0fc-2d68634dc42a" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:RepaymentsOfAccountsReceivableSecuritization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">112,970</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b0daecf3-2a14-4411-a8e6-7a2bf0c078d5" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:RepaymentsOfAccountsReceivableSecuritization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">125,879</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, cash collected but not yet remitted to MUFG </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(3)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3d34d880-3164-4b1c-8b67-6e970453f968" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="icfi:SaleOfReceivablesLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">28,841</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f94e8f32-953d-4d14-abfd-0c40abb243f5" contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16" name="icfi:SaleOfReceivablesLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">25,741</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_6d0ca688-1ea8-4379-9f51-cf6180485ed5" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The beginning balances represent cash collected from customers on behalf of MUFG for billed contract receivables that were previously sold and derecognized by the Company but had not been remitted to MUFG as of January 1, </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></ix:footnote></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_fd72a864-4fd5-4b4e-9a66-38ecb5b278a5" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9f76617d-e786-4042-8494-2d9e27263089" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:ProceedsFromSaleOfBilledReceivablesNotYetRemitted" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">5.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b9cd5db5-cc3c-4405-805b-4bb1225ed41a" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="icfi:ProceedsFromSaleOfBilledReceivablesNotYetRemitted" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">3.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the collection of billed contract receivables that were sold but not yet remitted to MUFG.</span></ix:footnote></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_648cca45-e463-4126-8651-e226e64461ab" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The ending balances are included as part of &#8220;Accrued expenses and other current liabilities&#8221; on the Company&#8217;s consolidated balance sheets.</span></ix:footnote></div></div></ix:nonNumeric></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The aggregate impact of the sale of billed contract receivables on the Company&#8217;s operating cash flows was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c2428775-7bc6-451e-a65e-f5463884972d" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ProceedsFromSaleAndCollectionOfReceivables" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">10.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_89abcbf3-174e-4cfb-a516-fafe93055774" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ProceedsFromSaleAndCollectionOfReceivables" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">7.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the three months ended March 31, 2025 and 2024, respectively.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At March 31, 2025 and December 31, 2024, the amounts due to MUFG for cash collected and not yet remitted for billed contract receivables sold that did not qualify as sales under ASC 860 totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5540e2aa-044c-460e-a489-70b58066fcb8" contextRef="C_23912cec-c646-4b5b-bb4c-0af9c401b5ef" name="icfi:CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6bfb20b7-f05a-447e-aaba-c2038114bd83" contextRef="C_6a6cf1ae-dcd8-4436-891e-d08dab284cee" name="icfi:CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">7.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively. These amounts are included as part of &#8220;Accrued expenses and other current liabilities&#8221; on the Company&#8217;s consolidated balance sheets.</span></p></ix:continuation></div><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div><ix:nonNumeric id="F_c52b10f2-a6fb-45db-8d0c-8a48cf684411" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:LesseeOperatingLeasesTextBlock" escape="true"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_4_leases"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 4 &#8211; LEASES</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At March 31, 2025</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, the Company had operating and finance leases for facilities and equipment with remaining terms ranging from </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_56bc04ea-0a5f-47db-bf5b-8fc6ca58fb90" contextRef="C_643b12b8-599c-49b4-8711-809093c2c045" name="us-gaap:LesseeOperatingLeaseRemainingLeaseTerm" format="ixt-sec:duryear"><ix:nonNumeric id="F_bd64687d-e219-4511-9b8f-a2a4c6bb4ba6" contextRef="C_643b12b8-599c-49b4-8711-809093c2c045" name="us-gaap:LesseeFinanceLeaseRemainingLeaseTerm" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">1</span></ix:nonNumeric></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> to </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_040fc724-11b2-49f5-a8d4-fdafa547383b" contextRef="C_bfb5c503-16b1-4160-b0ae-ce8464dccc17" name="us-gaap:LesseeOperatingLeaseRemainingLeaseTerm" format="ixt-sec:durwordsen"><ix:nonNumeric id="F_72a5aeae-3c16-4f8d-967a-62486f1c51f7" contextRef="C_bfb5c503-16b1-4160-b0ae-ce8464dccc17" name="us-gaap:LesseeFinanceLeaseRemainingLeaseTerm" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">14 years</span></ix:nonNumeric></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. </span><span><ix:nonNumeric id="F_e85758fd-98f7-42c3-8b1c-3bbed9d0a565" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" escape="true" continuedAt="F_e85758fd-98f7-42c3-8b1c-3bbed9d0a565_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Future minimum lease payments under non-cancellable operating and finance leases as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 were as follows:</span></ix:nonNumeric></span></p><div style="font-size:12pt;font-family:Times New Roman;"><ix:continuation id="F_e85758fd-98f7-42c3-8b1c-3bbed9d0a565_1" continuedAt="F_e85758fd-98f7-42c3-8b1c-3bbed9d0a565_2"><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:59.832%;box-sizing:content-box;"/>
         <td style="width:1.78%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:16.302999999999997%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.78%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:16.302999999999997%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Operating</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Finance</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2026</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ce795371-d959-4080-8e8e-59f1c69df4f3" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">25,144</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e9f6b206-8888-48dd-a852-47ac81b768d1" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,041</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2027</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e1449fbe-4c95-466a-9910-3e287dbc813b" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,158</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3567b370-3c3e-4ed6-bad4-ce37e82012bb" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,041</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 30, 2028</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f637b44f-5d79-46b0-b676-bc0675288cf6" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">17,511</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a07a1ec9-e9b1-44ff-8d74-bb1cea19178d" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,041</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 30, 2029</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9d189bdf-7ad8-4cd5-b6c4-9362455642a0" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,934</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d45b9482-eb85-45c8-b306-83a6e21b6af4" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,967</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2030</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b90480a8-00ae-49ef-83f5-898066942ba9" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,220</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_81d3887a-8f55-4ddc-b809-c1d808e24727" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,224</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Thereafter</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f263f13f-821f-4e3b-8c28-84755898ad2d" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">114,872</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_81389405-2e5b-4e1f-959c-6a39cc791a74" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityPaymentsDueAfterYearFive" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total future minimum lease payments</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b70899e3-ee45-4151-86cd-54c08b9568c1" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">208,839</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_39410ec5-f7c8-4d5d-9bfb-67e99ba8a5fe" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityPaymentsDue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,314</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Less: Interest</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2aff3a0e-ddae-4f5d-981c-816b6447b56c" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">36,919</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ad57b2c4-bad6-49fd-b06f-16f0551c43ab" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,086</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total lease liabilities</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3f440e42-b503-4606-8463-4c2962e45a81" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:OperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">171,920</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_28f1702e-ce0d-4c59-96ae-42bcc3822916" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,228</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Lease liabilities - current</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9831f35e-d69c-4aa2-975c-1b01c5b02daa" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:OperatingLeaseLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,792</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1197466c-f2c7-4a53-ad87-d83665083895" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,635</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Lease liabilities - non-current</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b98ec3b4-7aa9-4e00-95f9-1bfe8ed18580" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:OperatingLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">152,128</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2f863334-63d8-4b5f-936c-65d55f5c3548" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,593</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total lease liabilities</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ce891c40-9cf9-4ab1-aa49-564ada400de0" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:OperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">171,920</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fc0ef29b-6e36-4a45-ada8-c38d762fd22f" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:FinanceLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,228</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></ix:continuation></div></ix:nonNumeric></div><div><ix:continuation id="F_e85758fd-98f7-42c3-8b1c-3bbed9d0a565_2"></ix:continuation></div><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">11</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_f790d710-2236-4364-bd9f-29a834b5e67a" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:DebtDisclosureTextBlock" escape="true"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_5_debt"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 5 &#8211; DEBT</span></p><div style="font-size:11pt;font-family:'Calibri',sans-serif;"><ix:nonNumeric id="F_52bcbd15-3631-4aea-89c9-447b1294a53a" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ScheduleOfDebtInstrumentsTextBlock" escape="true"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and December 31, 2024, debt consisted of:</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.493%;box-sizing:content-box;"/>
         <td style="width:1.8%;box-sizing:content-box;"/>
         <td style="width:17.756%;box-sizing:content-box;"/>
         <td style="width:1.8%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:15.217%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.8%;box-sizing:content-box;"/>
         <td style="width:10.598%;box-sizing:content-box;"/>
         <td style="width:1.8%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:8.738000000000001%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="4" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="4" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Average<br/>Interest Rate</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Outstanding<br/>Balance</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Average<br/>Interest Rate</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Outstanding<br/>Balance</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Term Loan</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c76bc49a-3aa2-4326-ac57-3203981c4c20" contextRef="C_9ee2d019-aa3d-4a4f-9a4a-4cc09920f90b" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">200,250</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_64fb095d-0b59-4cdd-82f8-82b3bc9cce2e" contextRef="C_3095a2ed-0bae-42bd-9607-fd26d0bf9a8a" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">200,250</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Delayed-Draw Term Loan</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_324e437c-9cc7-4177-814c-b9f9f317f83a" contextRef="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">154,000</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e93755ef-8c9d-4200-9f56-796407684ee1" contextRef="C_408a8d7a-adcc-4ee6-b3b7-b6fce8885276" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">156,750</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Revolving Credit</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7ae19ea3-eda7-4002-82d8-fbc1566aa8f0" contextRef="C_012c42a7-da01-4ce4-bcaf-1ce14733fd9a" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">150,000</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c776d469-0868-4df0-a2c4-d90ecb79f53f" contextRef="C_14e528e0-8808-4d1f-b13a-10ed2d500bec" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">57,225</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total before debt issuance costs</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_47fcb3e8-a959-4ee2-a60a-7b5e928bd2db" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:DebtInstrumentInterestRateDuringPeriod" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">5.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_95aa6785-17ce-4626-bfd7-0e36fc563284" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">504,250</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9709c9b7-6c26-4945-9fb2-103aadb9bb54" contextRef="C_303ab8ab-e9ca-4ffd-b3ef-e1a4befbc6c2" name="us-gaap:DebtInstrumentInterestRateDuringPeriod" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d0acd7c6-ebd3-4324-ac13-aa8c6152a0c6" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">414,225</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Unamortized debt issuance costs</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3c33541c-923f-4b5e-83bc-5278b0c4cd50" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,206</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_17a697db-784a-42d5-9052-53da582cc0f9" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,482</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2488c1cf-afb4-42aa-add0-275352fe7610" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LongTermDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">502,044</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fbd052b4-5d5a-465f-940f-87ea20598539" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:LongTermDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">411,743</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:48.8%;box-sizing:content-box;"/>
         <td style="width:2.22%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:21.84%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:2.22%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:20.919999999999998%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Current portion of long-term debt</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3423a773-329d-44b4-9fd1-1bff2137e4df" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LongTermDebtCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bdddbacc-3047-4511-b030-8987f0f43d21" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:LongTermDebtCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Long-term debt - non-current</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_dcd55d2a-60ed-42a8-b024-1bd2865f6577" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LongTermDebtNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">502,044</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8f9567b0-1573-4d64-a67a-fe4511e57780" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:LongTermDebtNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">411,743</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_05ab85f2-a4d0-45aa-836f-d34edba0c669" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LongTermDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">502,044</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8b240530-a15e-451a-9970-74fc57a1eb86" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:LongTermDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">411,743</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></ix:nonNumeric></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">As of March 31, 2025, the Company had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e1f9afbd-1973-4f03-8bfd-e37d8ef193fc" contextRef="C_d077db2c-1201-47ee-97d7-0b2c6edbe4d9" name="us-gaap:DebtInstrumentUnusedBorrowingCapacityAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">448.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> of unused borrowing capacity under the $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1b244886-2d20-4dd9-bd56-dcfd64436851" contextRef="C_d077db2c-1201-47ee-97d7-0b2c6edbe4d9" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" unitRef="U_USD" scale="6" decimals="INF">600.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million revolving line of credit under a credit agreement with a group of lenders (the &#8220;Credit Facility&#8221;). The unused borrowing capacity is inclusive of outstanding letters of credit totaling </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_867aeeea-5dd7-4b75-b92a-92c1ea153c08" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LettersOfCreditOutstandingAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. The average interest rate on borrowings under the Credit Facility was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2f13ce20-c8e1-4e13-8556-59acd67e137d" contextRef="C_366bd7da-e2a6-4ff1-bb17-abca9a65eb2c" name="us-gaap:LineOfCreditFacilityInterestRateDuringPeriod" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">5.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the three months ended March 31, 2025 and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_149300a2-d47f-459e-b431-c86dbc911efd" contextRef="C_7db129b0-0161-4e6b-98c7-256cbd332f4f" name="us-gaap:LineOfCreditFacilityInterestRateDuringPeriod" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the twelve months ended December 31, 2024, respectively. Inclusive of the impact of floating-to-fixed interest rate swaps (see &#8220;Note 7 </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Derivative Instruments and Hedging Activities&#8221;), the average interest rate was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_541056e0-d9e7-4e4c-8318-fd96ee5de191" contextRef="C_5fd83144-3897-4f84-96ea-5e88b71cc15c" name="us-gaap:DerivativeFixedInterestRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">5.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the three months ended March 31, 2025 and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3afd2fe6-a1a3-4cf9-bb03-6deac75c6076" contextRef="C_5ab8b4c0-990d-48cc-8c7e-798cb22c2869" name="us-gaap:DerivativeFixedInterestRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">5.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the twelve months ended December 31, 2024, respectively.</span></p><div style="font-size:11pt;font-family:'Calibri',sans-serif;"><ix:nonNumeric id="F_92967bca-1bb1-4132-a857-f899fdd480e0" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" escape="true"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Future scheduled repayments of debt principal are as follows:</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.014%;box-sizing:content-box;"/>
         <td style="width:1.761%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:15.526%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.761%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:14.986%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.761%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:9.824%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.761%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:8.603%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Payments due by</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Term Loan</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Delayed-Draw Term Loan</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Revolving Credit</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2026</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_502dbb36-d428-4b91-8d01-39245f07f942" contextRef="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2f0a2a7c-359e-418e-9ac4-c5afbe18f68f" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2027</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5ff2a22a-8bd0-4143-bb63-521959663184" contextRef="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_858fb7df-619d-462a-bfd3-c2399bf31b89" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">May 6, 2027 (Maturity)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c617adac-8fa0-4ece-aa7d-70540eb4e9c8" contextRef="C_9ee2d019-aa3d-4a4f-9a4a-4cc09920f90b" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">200,250</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_442355ef-9a84-4db6-810c-f411b2b88cbb" contextRef="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">154,000</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1f36f60b-b27e-47af-8583-19ac137ced1e" contextRef="C_012c42a7-da01-4ce4-bcaf-1ce14733fd9a" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">150,000</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_96aa9670-09c3-4ff3-8170-71b5623b1fb9" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">504,250</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3b0e2131-7312-4219-977a-83f0e401cd7d" contextRef="C_9ee2d019-aa3d-4a4f-9a4a-4cc09920f90b" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">200,250</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_51ecad05-40f9-4810-a918-b2fcc0d8900e" contextRef="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">154,000</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_20ddf47d-624f-4a59-99e9-1efc5016abf2" contextRef="C_012c42a7-da01-4ce4-bcaf-1ce14733fd9a" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">150,000</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ee4d7710-f9c4-4d71-a446-bb1181081d59" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">504,250</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></ix:nonNumeric></div></ix:nonNumeric></div><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div><ix:nonNumeric id="F_ceea30a9-ea47-4eb5-9ef2-8951c298c809" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:RevenueFromContractWithCustomerTextBlock" escape="true" continuedAt="F_ceea30a9-ea47-4eb5-9ef2-8951c298c809_1"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_6_revenue_recognition"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 6 &#8211; REVENUE RECOGNITION</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Disaggregation of Revenue</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span></p><div><ix:nonNumeric id="F_e60b9a97-5a1f-46f4-b214-bbbe972a8634" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:DisaggregationOfRevenueTableTextBlock" escape="true" continuedAt="F_e60b9a97-5a1f-46f4-b214-bbbe972a8634_1"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company disaggregates revenue from clients into categories that depict how the nature, amount, and uncertainty of revenue and cash flows are affected by economic and business factors. Those categories are client market, client type, and contract mix.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.28%;box-sizing:content-box;"/>
         <td style="width:1.66%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:11.92%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.2%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.379999999999999%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.66%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:11.92%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.2%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.379999999999999%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.4%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Client Markets:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Energy, environment, infrastructure, and disaster recovery</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_15cd0265-fa69-4514-92d0-f7b32fa689d2" contextRef="C_4487f286-b161-471f-9f1f-930ddae96456" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">238,570</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9d69f318-72da-4a6d-8016-67eb5ac46fa7" contextRef="C_524c1f59-fefa-4b0f-be9d-91e3cedad43d" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">49</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c3719a6c-54c7-41fd-a2f8-c4c6bb425a4d" contextRef="C_7c50e895-8ea4-408e-a9f7-6d3eaab5c259" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">224,692</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b6f4450e-f1cd-496c-9775-f5299581fcb8" contextRef="C_42bd8d7d-8340-4d3f-b1e1-8d37817dce72" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">45</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Health and social programs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4b706a2d-d2b1-46ea-9758-c821dd070bcd" contextRef="C_3ecd6ed2-c36f-414d-93ea-f6382cbe02f8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">169,023</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0e56ce7e-5e16-4c14-9b2c-092a990193cd" contextRef="C_115f587b-83e0-4c3c-a011-a7e4b770764c" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">35</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bd02ea72-fdce-4138-bf4f-1ae7ffb54a48" contextRef="C_ee2386b3-1d85-48a6-b287-bf7ab1a771b3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">190,892</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_67c679d6-eb7e-46dd-8b1f-dc175c9d4269" contextRef="C_0aed76c9-e962-4c73-9842-27d5b9f60265" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">39</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Security and other civilian &amp; commercial</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_992025b8-d5bc-4e11-b1d4-ea0f6b576b83" contextRef="C_75d62052-354b-49bd-ad1a-c6542718a3e2" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">80,025</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f9c266ad-5f66-4856-a15d-315c7cc70be5" contextRef="C_4e4c9c95-c7ec-42bf-92fc-e01f8841e066" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">16</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0c4cf2d7-407f-432a-8228-b496ea62854b" contextRef="C_765bbd2e-9be5-405b-bd3e-14025deeb60a" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">78,852</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_aa234376-7a9f-4b18-9200-47803c9ca634" contextRef="C_d57ad3e9-6538-4c19-9cd0-d5c27b5f72be" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">16</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_139a5a34-69c2-451e-840a-48fbf18256e8" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">487,618</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_59a2896d-4156-4efe-8902-42c29e4069f8" contextRef="C_714e3fa3-0bc6-4098-b461-0fc7b3639e7c" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">100</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_20049041-1ea6-41ec-9b70-604730627253" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">494,436</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f3681b2e-91be-434e-9186-ce519dc61741" contextRef="C_db7030f9-fff2-4759-9827-3e00df353c48" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">100</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></ix:nonNumeric></div></ix:nonNumeric></div></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">12</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_ceea30a9-ea47-4eb5-9ef2-8951c298c809_1"><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_e60b9a97-5a1f-46f4-b214-bbbe972a8634_1">
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.28%;box-sizing:content-box;"/>
         <td style="width:1.66%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:11.92%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.2%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.379999999999999%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.66%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:11.92%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.2%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.379999999999999%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.4%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Client Type:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">U.S. federal government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6b194679-0b9f-475b-87ff-5b04b2f6bf4f" contextRef="C_08338f0b-5a24-4431-bf34-ef6998ad1b46" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">239,620</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_672862f3-3b54-4734-9abc-a76d6b6c3de9" contextRef="C_f5e4288d-0c00-4986-8cc6-7b8c6cdc84c1" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">49</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a4e5fa0f-24f7-451e-9a90-e150f7f64eb4" contextRef="C_c2328f97-1028-4ad0-a3f6-fb8de5b31735" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">274,195</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fc3bfd3e-6ced-4af3-bc2a-864dd45c70ce" contextRef="C_069d1d43-0a2e-454f-a95b-6c8f6f730036" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">55</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">U.S. state and local government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4efea394-0597-47e9-a07e-99219ca0e9d9" contextRef="C_4340c5ae-462d-44cd-b66d-499120292957" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">76,865</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_640ee45b-2525-4625-aea9-670d4881851c" contextRef="C_efa12804-12fd-42a8-8d38-2679140208f2" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">16</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c96a6fa7-91a3-4081-aa70-340a3cae5db5" contextRef="C_9281c9ab-2f63-4c32-8257-44e78e05c43e" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">76,953</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9bf0e931-26ce-4b25-98a1-8617e95e104e" contextRef="C_31c84116-404b-4fcd-a354-fed1fee2a202" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">16</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">International government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9625f9e1-507c-4d32-a201-60df3c8b91b8" contextRef="C_afd050b4-1de2-48ba-978e-e515dea2b202" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27,075</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_60b315a9-d3d8-4126-84c4-be7abb275d3a" contextRef="C_ec625ed0-9d87-438f-bcfb-573cfe9563f3" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">5</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_afb0e12b-c0d2-4329-8641-86e46c91f70c" contextRef="C_421bd624-4fbd-4ce7-bc99-10481d9ef79a" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">25,263</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fbac1842-5464-4751-82fc-706129dbaf20" contextRef="C_1ab134c6-d4b3-46fa-ab4b-f87ab7775117" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">5</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total Government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_733a42cd-0dfc-4349-a2d6-743db7f6a1ee" contextRef="C_598c0462-6afd-47c9-b4bb-5b35bc9efb51" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">343,560</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_85d32422-39aa-4c32-92da-d10c39fbb584" contextRef="C_1f0fbfd3-298d-441a-94a2-ee47916fe352" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">70</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a69eeb8d-4ff1-4014-b4aa-7d79e1fe1558" contextRef="C_dcb9f15f-7dbf-4c24-ba62-4371bc6681ca" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">376,411</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9617c261-f7fa-4ac0-b236-f664e3152b20" contextRef="C_0a7ca982-a79b-42fc-8208-71975a520f92" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">76</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Commercial</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3b78a552-1ba6-4c55-955a-2ea98be882ee" contextRef="C_7827564c-2547-4664-83a9-5dbd1c5a1e12" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">144,058</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ed7e00f9-aca9-4b98-a649-7bf68a52b074" contextRef="C_ca3d0338-6140-447b-bd71-0ce3e3b69b4b" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">30</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_566245e1-7932-43aa-a00e-ba5d1923e706" contextRef="C_420fadfa-6fa7-4e06-a0bf-aed952d980b6" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">118,025</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bd864315-d1ff-4963-aebe-a56bbc269403" contextRef="C_0f664dab-464c-49d8-9f1a-a047dc72f783" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">24</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:15pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:2.773%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cf1a70c6-446d-405c-af78-8ee987902f99" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">487,618</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4675565a-90a9-46e4-a670-62ed876a8d97" contextRef="C_714e3fa3-0bc6-4098-b461-0fc7b3639e7c" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">100</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_253eb21e-42ce-4f85-a922-227e0c64070f" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">494,436</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_018c2755-d3f1-45fa-b500-0f1e18a4f2f2" contextRef="C_db7030f9-fff2-4759-9827-3e00df353c48" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">100</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.28%;box-sizing:content-box;"/>
         <td style="width:1.66%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:11.92%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.2%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.379999999999999%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.66%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:11.92%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.2%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.379999999999999%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.4%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Contract Mix:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Time-and-materials</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8528d200-bd23-45f6-8ba0-cddd8302235b" contextRef="C_832766b3-22da-46ec-90fa-22ffcee71b17" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">209,046</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f7df0978-0303-4d43-9aa4-dcc34434fa30" contextRef="C_6fe8c294-29ff-487d-9d7b-390239496c02" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">43</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1c69ee41-59eb-4b7d-9a13-2f54c32947e8" contextRef="C_7782ddb3-fe57-4895-bf93-617a0c9a2238" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">206,153</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_04e78c4b-bb27-47a0-a11b-10d3a15630a5" contextRef="C_46cd81a1-3db3-42f6-b3ab-758fd659bee5" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">42</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Fixed-price</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c7eca1d9-65d0-4780-8540-20e353b1ccd4" contextRef="C_7e5d1f96-5f21-4b79-bf44-f99192a42dda" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">238,072</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9a263142-f857-4c36-8ec7-ee8b5ce312be" contextRef="C_154e9ced-a7bc-4168-87ae-5d6b9aae4177" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">49</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_290d326c-8c2f-4939-a755-2af5ddcf427d" contextRef="C_fcab69ee-709e-4d1e-b8fb-65f72a7ce8db" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">224,796</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_15d0bb40-8442-4d18-acdd-ae2e103cb1c1" contextRef="C_c2980db3-f07f-4041-82b0-ed1219de7116" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">45</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cost-based</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_447645af-dd66-477e-9360-733284427da4" contextRef="C_acb4e0fa-acb4-4617-8aa5-06cf651f97f4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">40,500</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f4d26426-b996-4a05-8e5f-adaa07d1422b" contextRef="C_5ce863bf-c10b-40aa-a28b-5d32c8cb7fd9" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">8</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5fb59c87-7fc6-4514-a02d-96aa41e8567c" contextRef="C_f43c9e8b-2753-4f81-a850-d05b66f6083c" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">63,487</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2088ab4a-eeea-468d-a038-4d8ce2475d97" contextRef="C_420fce3b-d577-4598-a8cb-7b980ea4a3a9" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">13</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ea1305a0-5602-4b37-b197-8929d8d6efae" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">487,618</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_52554f1b-efc4-489f-8cb3-98a6e68025ff" contextRef="C_714e3fa3-0bc6-4098-b461-0fc7b3639e7c" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">100</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0a156051-0e04-4b4c-b1f6-90db5e9f2e53" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">494,436</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c2c8c2d9-2b7a-489b-a955-7050aa00cbb8" contextRef="C_db7030f9-fff2-4759-9827-3e00df353c48" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">100</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></ix:continuation></div><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Contract Assets and Liabilities</span></p><p style="text-indent:4.173%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Contract assets consist of unbilled receivables on contracts where revenue recognized exceeds the amount billed. Contract liabilities result from advance payments received on a contract or from billings in excess of revenue recognized.</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_2751b50d-573e-420f-93a1-50309312bff6" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" escape="true"><p style="text-indent:4.173%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table summarizes the contract assets and liabilities as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and December 31, 2024:</span></p><p style="text-indent:4.173%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:54%;box-sizing:content-box;"/>
         <td style="width:2.28%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:18.72%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:2.28%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:18.72%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract assets</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_53668d3e-bb6a-48f8-a4ad-06a56992befd" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:ContractWithCustomerAssetNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">228,314</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c3139f81-cf89-46b1-8475-3135dc2dc03c" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:ContractWithCustomerAssetNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">188,941</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract liabilities</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_aa04f7e6-a076-4975-9f1b-1e35a8b47657" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:ContractWithCustomerLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27,407</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3dbeb6ac-9536-40f9-8b5e-73671e40f1e8" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="us-gaap:ContractWithCustomerLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24,580</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net contract assets (liabilities)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_aee5b8d0-b013-4a69-a96d-0368d2aafa38" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="icfi:ContractWithCustomerAssetsLiabilitiesNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">200,907</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_683e1eaf-27e5-4f2e-af9c-d7c73ffca107" contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f" name="icfi:ContractWithCustomerAssetsLiabilitiesNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">164,361</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></ix:nonNumeric></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The increase in net contract assets (liabilities) is primarily due to the timing difference between the performance of services and billings to customers. During both the three months ended March 31, 2025 and 2024, the Company recognized </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9d4566c8-d6f2-4fa1-b7a0-684d6f111b3c" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_5583ea39-e480-40d0-845b-384ca618db59" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">12.8</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> in revenue related to the contract liabilities balance at December 31, 2024 and 2023, respectively.</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Unfulfilled Performance Obligations</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Unfulfilled performance obligations (&#8220;UPO&#8221;) were </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_46422ea6-8a00-4df3-8134-001488a4fe43" contextRef="C_cc0c285b-722e-4ae4-9191-0208c84dc361" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="9" decimals="-8" format="ixt:num-dot-decimal">0.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> billion</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3ad05271-195a-46dd-a043-088e14620818" contextRef="C_b1f58b6a-aabd-48ae-a826-4b7bf82c9268" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="9" decimals="-8" format="ixt:num-dot-decimal">1.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> billion as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_bc987d48-d1fc-496c-8990-f399097b4f71;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and December 31,</span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_b9778b98-1a47-4031-839a-f9e0f2a9a2ce;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> 2024</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively. The UPO of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5391347f-a524-4ad3-9789-0dbb40eda0f2" contextRef="C_cc0c285b-722e-4ae4-9191-0208c84dc361" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="9" decimals="-8" format="ixt:num-dot-decimal">0.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> billion reflects the impact of approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b6a26d1c-c689-4180-8163-908423bbdef3" contextRef="C_83b896a0-9a12-4146-82cd-1b0ee089bc6a" name="icfi:IncreaseDecreaseInUnfulfilledPerformanceObligations" unitRef="U_USD" scale="9" decimals="-8" format="ixt:num-dot-decimal">0.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> billion related to the termination-for-convenience notifications the Company received pursuant to the executive orders issued by the Administration or actions by DOGE during the three months ended March 31, 2025.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company expects to recognize the remaining UPO as revenue of approximately </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_983e5328-26c9-4525-82b6-8950803c788f" contextRef="C_cc0c285b-722e-4ae4-9191-0208c84dc361" name="us-gaap:RevenueRemainingPerformanceObligationPercentage" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">53</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> by December 31, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_b1212fc9-e855-4dc6-9369-8a051e07668d;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7796c2f9-decd-41ce-bc83-6d2b1f85f65b" contextRef="C_e96a556f-6c8b-4c69-990b-3cf7504d7de3" name="us-gaap:RevenueRemainingPerformanceObligationPercentage" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">78</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> by December 31, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_955ea635-1723-4117-9828-3d958dd331cb;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2026</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, and the remainder thereafter.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Subsequent to March 31, 2025 and through April 25, 2025, the Company received additional notices for termination-for-convenience. Had these termination-for-convenience occurred prior to March 31, 2025, the total UPO would have been reduced by approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2456ad7b-4466-42ba-91e7-9c065abac8ff" contextRef="C_9ace2ee2-4780-404f-8831-c4897a9e81d6" name="icfi:IncreaseDecreaseInUnfulfilledPerformanceObligations" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">12.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million.</span></p></ix:continuation></div><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_55284614-2d99-4077-857c-563fd35f718d" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" escape="true"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_7_derivative_instruments_and_hedge"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 7 &#8211; DERIVATIVE INSTRUMENTS AND HEDGING ACTIVITIES</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At March 31, 2025</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, the Company had floating-to-fixed interest rate swap agreements for an aggregate notional amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1ffb5b27-c589-4743-8384-c7a0a55a50c9" contextRef="C_5fd83144-3897-4f84-96ea-5e88b71cc15c" name="us-gaap:DerivativeNotionalAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">175.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million,</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> of which $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2594c52d-e65f-4b3a-b4e6-cafdd617c516" contextRef="C_5581414c-697a-4843-b00e-872556ab5b09" name="us-gaap:DerivativeNotionalAmount" unitRef="U_USD" scale="6" decimals="-6" format="ixt:num-dot-decimal">75.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million will mature on </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_90e18f25-6c27-4c64-b2e1-a22d6deee72b" contextRef="C_edaaa534-a6bd-4967-a81a-123d9286b9ad" name="us-gaap:DerivativeMaturityDates" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">February 28, 2028</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2ab946f7-d71e-4b97-b4e4-1e18d5b57ee5" contextRef="C_1197b833-3595-4136-8376-51bbb5058b00" name="us-gaap:DerivativeNotionalAmount" unitRef="U_USD" scale="6" decimals="-6" format="ixt:num-dot-decimal">100.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million will mature on </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_21fe814b-e62f-4e02-9d19-0b156bd06aed" contextRef="C_8dc3cce5-4ddf-447b-8665-f21c71a4ef29" name="us-gaap:DerivativeMaturityDates" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">June 27, 2028</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. The Company has designated the swap agreements as cash flow hedges. See &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Note 5 </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Debt&#8221; for details on the impact of the swap agreements on the Company&#8217;s interest rates. See &#8220;Note 13 </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Fair Value&#8221; for the fair value of these swaps.</span></p></ix:nonNumeric></div><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">13</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_9fcf3938-fc14-4c05-a45e-0b94e08176d5" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncomeTaxDisclosureTextBlock" escape="true"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_8_income_taxes"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 8 </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8211; INCOME TAXES</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_822d5385-994c-486e-b100-1fac8d8f85a1" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" escape="true"><p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">A reconciliation of the Company&#8217;s statutory rate to the effective tax rate (the &#8220;ETR&#8221;) for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024 is as follows:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:60.38%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:16.98%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:8.26%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:10.38%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Statutory tax rate</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e2cfbb4c-396a-4fe3-bbbd-5ff948db5a5e" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">21.0</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d684cb81-c860-4478-a209-57fab7e51ed7" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">21.0</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">State taxes, net of federal benefit</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9a4a44f2-597f-469d-bc14-af6c696234f6" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.0</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7bdf9958-96b7-467b-8c60-36b19dda1b1b" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.0</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Section 987 regulations</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c7f9cd83-b3b0-4d84-933a-71758fb52993" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" unitRef="U_pure" scale="-2" decimals="3" sign="-" format="ixt:num-dot-decimal">14.8</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Equity-based compensation</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_888087bc-c0ee-468b-aa04-726d06d3d2b4" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">1.5</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_16888b51-2e21-4682-bee7-3990acb0ac0b" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" unitRef="U_pure" scale="-2" decimals="3" sign="-" format="ixt:num-dot-decimal">5.4</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Uncertain tax position</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bc0082f5-8fbc-4772-a5a9-8bb501474c62" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:EffectiveIncomeTaxRateReconciliationUncertainTaxPosition" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">3.9</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1e68a0e2-45bc-4bbd-bc48-eed50db34ee0" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="icfi:EffectiveIncomeTaxRateReconciliationUncertainTaxPosition" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">2.5</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Tax credits</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1b7c38eb-2b62-4fb4-8e84-63cd9cbcce8b" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">11.3</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_eafcc5b3-3dac-4d05-956a-1e53bab59b77" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.7</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6a041627-51df-450a-9f0f-4ff7b957b8ea" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">4.2</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e2e43c74-b007-452d-9d65-735f482c1441" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">3.0</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Effective tax rate</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_62f7d6bf-7c68-44a6-84b7-706913a9ce9a" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">10.5</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a5e4c531-10f3-440e-a7b2-c355958d79cc" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">20.4</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
       </table></ix:nonNumeric></div><p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The decrease in the Company&#8217;s ETR was primarily due to an income tax benefit recognized in the first quarter of 2025 from tax planning implemented in connection with the &#8220;transitional rules&#8221; governing unrealized foreign exchange gains and losses derived from translation of the operations, assets and liabilities of non-U.S. qualified subsidiaries provided by recently finalized U.S. federal tax regulations under Internal Revenue Code Section 987 (&#8220;IRC 987&#8221;). The regulations under IRC 987 are effective for the Company for tax years beginning after December 31, 2024 and require computation of a pre-transition foreign currency gain or loss to be included in the determination of future taxable income or loss and an analysis of the various elections available to taxpayers. Based on the Company&#8217;s current analysis of the regulations and the available election to amortize its pre-2025 cumulative unrealized foreign exchange gains &amp; losses impacting U.S. taxation of foreign earnings under Subpart F of the Internal Revenue Code, the Company recognized a non-cash deferred income tax benefit of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5f148e16-dc7b-4f2b-bf87-4f8e31a086e7" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:DeferredIncomeTaxExpenseBenefit" unitRef="U_USD" scale="6" decimals="-5" sign="-" format="ixt:num-dot-decimal">4.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million related to its election to amortize its pre-transition foreign currency losses against taxable income over </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_5125fd91-5a68-48c8-93df-875adfb5410f" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ten years</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span></p></ix:nonNumeric></div><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div><ix:nonNumeric id="F_f4a85c07-6baa-444b-a90a-7f6b614b2fa0" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" escape="true" continuedAt="F_f4a85c07-6baa-444b-a90a-7f6b614b2fa0_1"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_9_stockholders_equity"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 9 &#8211; STOCKHOLDERS&#8217; EQUITY</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Accumulated Other Comprehensive Loss</span></p><div><ix:nonNumeric id="F_2cdd3456-f952-4e0a-be3f-993f5c89997a" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" escape="true" continuedAt="F_2cdd3456-f952-4e0a-be3f-993f5c89997a_1"><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive loss as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024 included the following:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:52.921%;box-sizing:content-box;"/>
         <td style="width:1.361%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.145000000000001%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.361%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.705%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.361%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.145000000000001%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Foreign<br/>Currency<br/>Translation<br/>Adjustments</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Change in<br/>Fair Value of<br/>Interest Rate<br/>Hedge<br/>Agreements</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at December 31, 2024</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_dabf1ebb-8872-43d1-8db9-f97060d47715" contextRef="C_11354c7f-7371-4601-8c66-053545e8fdee" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">16,383</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bfc5207c-8a45-460d-8981-e011584390dc" contextRef="C_e27d3e7d-ee94-449b-bf1d-82c286cd3fe5" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">637</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_04caad66-5e22-4256-9cb9-3c1aa3d81c18" contextRef="C_b476051d-acdb-427d-8f5d-2aebbd684943" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">15,746</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Current period other comprehensive (loss) income:</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other comprehensive (loss) income before reclassifications</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e0de9a63-fbe4-42be-87cc-732950f1b834" contextRef="C_c6b1312a-edb1-4a3b-9f7f-b97f285aa893" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,273</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8f0fe3b6-b162-400e-aab8-d0f0e4c9c899" contextRef="C_f86e4dea-16a2-4319-b4dd-9bb5ce4a0825" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,854</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_105330c3-1f9b-432e-b5cf-7175c1b6ad5a" contextRef="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,419</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Amounts reclassified from accumulated other comprehensive (loss) income </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1) (2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c0bec086-e6da-4280-baa3-a0ffbb10676b" contextRef="C_c6b1312a-edb1-4a3b-9f7f-b97f285aa893" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,094</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_254c6068-cd9c-41dc-9dfc-1545e23c0e43" contextRef="C_f86e4dea-16a2-4319-b4dd-9bb5ce4a0825" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">691</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9672d8e5-b2d5-44e8-9ee9-1d87baeee88e" contextRef="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,785</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Effect of taxes</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cbcdfcb4-0ade-4670-aeff-b1d78bf76a71" contextRef="C_f86e4dea-16a2-4319-b4dd-9bb5ce4a0825" name="us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">653</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5c81dfa6-1e7a-42ec-bd0d-aea4a9bba085" contextRef="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139" name="us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">653</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total current period other comprehensive (loss) income</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e36fab6b-6e1d-4114-9ce1-e53659b6a154" contextRef="C_c6b1312a-edb1-4a3b-9f7f-b97f285aa893" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">821</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b1fe9bc6-cc8f-4983-a87e-e3df1620571e" contextRef="C_f86e4dea-16a2-4319-b4dd-9bb5ce4a0825" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,892</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fb8cf425-76ca-4927-89fa-92da0d909bca" contextRef="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,713</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at March 31, 2025</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9b64d21d-b615-43d6-b4ec-61c4eda30811" contextRef="C_1aafb042-ee6c-4f5e-ba1e-10950a029c05" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">17,204</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d3f66dc4-a35d-4aef-b242-317a7c83ec3b" contextRef="C_95e13872-fc31-450f-9cd0-90ee77c03bf3" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,255</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_73e84396-88e1-4890-b40c-906d61097ee3" contextRef="C_03f68630-29e5-4ea8-ae0e-5ea8d827f734" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">18,459</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(1) </span><ix:footnote id="FNT_4909917d-0685-4b82-9a24-610497a41b08" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company reclassified $</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4d621d84-a834-4938-9b16-02f2b299c02b" contextRef="C_c6b1312a-edb1-4a3b-9f7f-b97f285aa893" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">4.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of effect of taxes related to Foreign Currency Translation Adjustments from accumulated other comprehensive (loss) income into earnings in connection with IRC 987. </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">See &#8220;Note 8 &#8211; Income Taxes&#8221;.</span></ix:footnote></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(2) </span><ix:footnote id="FNT_e6741e45-c854-4f8b-85a7-8762b41454e5" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company expects to reclassify approximately $</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fdbf46b6-fcb4-4052-8f2e-f570f96493bb" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet" unitRef="U_USD" scale="6" decimals="-5" sign="-" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of unrealized losses related to the Change in Fair Value of Interest Rate Hedge Agreements from accumulated other comprehensive (loss) income into earnings during the next 12 months.</span></ix:footnote></p></ix:nonNumeric></div></ix:nonNumeric></div></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">14</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div><ix:continuation id="F_f4a85c07-6baa-444b-a90a-7f6b614b2fa0_1"><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_2cdd3456-f952-4e0a-be3f-993f5c89997a_1"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:52.921%;box-sizing:content-box;"/>
         <td style="width:1.361%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.145000000000001%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.361%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.705%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.361%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.145000000000001%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Foreign<br/>Currency<br/>Translation<br/>Adjustments</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Change in<br/>Fair Value of<br/>Interest Rate<br/>Hedge<br/>Agreement and Other Adjustments</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at December 31, 2023</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4b603048-154b-4729-b929-9fbbf3b60339" contextRef="C_41834a87-ffb8-4b29-9f7a-04009c22d2d8" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">12,695</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2d2319b2-75ef-4f88-a357-774b04dab794" contextRef="C_3517c095-337d-4942-b8d2-d306b64e8337" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">810</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3bee3819-7568-49e2-8f34-0ab6adaca60a" contextRef="C_6fac847c-8078-41ea-89da-f86c78130f0b" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">11,885</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Current period other comprehensive (loss) income:</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other comprehensive (loss) income before reclassifications</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3c40f98c-186e-4317-81da-598dfb9b7dc1" contextRef="C_a012e2e7-4fcc-4a9a-b1cb-41f5afedd048" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,534</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_39ab872f-16b3-4b6d-a12b-0771566b10da" contextRef="C_eadcbac7-05a9-43c6-bb48-2856312f45de" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,589</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_40707769-e11b-4f4f-8b6d-781cea357590" contextRef="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135" name="us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,055</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5.05pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.933%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Amounts reclassified from accumulated other comprehensive (loss) income</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8d301182-55e8-4cfd-a124-2872996946d0" contextRef="C_eadcbac7-05a9-43c6-bb48-2856312f45de" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,671</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_369cbb95-9e66-4dbf-8d90-3af58acc1d70" contextRef="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135" name="us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,671</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Effect of taxes</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_50de9858-b747-4d73-aed6-6522780202dd" contextRef="C_a012e2e7-4fcc-4a9a-b1cb-41f5afedd048" name="us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">112</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_06baccde-8c79-4e29-beee-c0e692d012ff" contextRef="C_eadcbac7-05a9-43c6-bb48-2856312f45de" name="us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">812</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_38a59130-5892-4ed0-9ae7-2cdf28be807c" contextRef="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135" name="us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">700</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total current period other comprehensive (loss) income</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d5fc2e54-8ad7-47ef-948f-33deec43b658" contextRef="C_a012e2e7-4fcc-4a9a-b1cb-41f5afedd048" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,422</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_64ae01c8-9fbd-45bc-ab99-8d43157a6337" contextRef="C_eadcbac7-05a9-43c6-bb48-2856312f45de" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,106</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_50fe6b4d-66d1-4fd0-9b8e-14673d4f8ae4" contextRef="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">684</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at March 31, 2024</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a10e59f5-b0bb-4036-ab67-242dc252e231" contextRef="C_f0215c95-f102-42e2-9f17-aff7eb1fc531" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">14,117</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6196cf41-64ce-4f42-be6f-777013d37ec9" contextRef="C_e465158c-a18e-4d0f-9021-610445a089aa" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,916</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3ab7032d-5202-458e-9f47-bc7937862d82" contextRef="C_3b951961-6572-4dbd-a007-2443f0726987" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">11,201</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></ix:continuation></div><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Share Repurchases</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company repurchases shares under the $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1adc725c-bc82-4ebf-8070-cd49e5d89cad" contextRef="C_eaf8d061-8b32-4c51-a3e3-903022a6b165" name="srt:StockRepurchaseProgramAuthorizedAmount1" unitRef="U_USD" scale="6" decimals="INF" format="ixt:num-dot-decimal">300.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million share repurchase program authorized by the Company&#8217;s board of directors. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In addition, the Company repurchases shares in connection with the vesting of restricted stock units (&#8220;RSUs&#8221;) and performance share awards (&#8220;PSAs&#8221;) </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">granted to employees. </span><span><ix:nonNumeric id="F_64cae246-c84d-4b51-b679-254b0642c600" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ScheduleOfTreasuryStockByClassTextBlock" escape="true" continuedAt="F_64cae246-c84d-4b51-b679-254b0642c600_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Repurchases for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024 are as follows:</span></ix:nonNumeric></span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_64cae246-c84d-4b51-b679-254b0642c600_1" continuedAt="F_64cae246-c84d-4b51-b679-254b0642c600_2">
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:30.96%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:11.52%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:15.280000000000001%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:2.42%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:16.04%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:15.780000000000001%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="12" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="5" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="5" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount Paid</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount Paid</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Share Repurchase Program</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_38807b69-3258-498f-ab45-e3225933488f" contextRef="C_c2b01a05-d0c9-47fe-9d80-fde68bdf35ad" name="us-gaap:StockRepurchasedDuringPeriodShares" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">313,048</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1fea5a38-4a63-4441-9fd1-f7af8bec7d00" contextRef="C_c2b01a05-d0c9-47fe-9d80-fde68bdf35ad" name="us-gaap:StockRepurchasedDuringPeriodValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">35,052</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e4d83f24-1798-4efe-8769-57304c8bc759" contextRef="C_86ed4c32-a07f-435c-a2de-68d84ca46f52" name="us-gaap:StockRepurchasedDuringPeriodShares" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">172,817</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e0e6ae4f-d834-4650-856f-b35a0154bc29" contextRef="C_86ed4c32-a07f-435c-a2de-68d84ca46f52" name="us-gaap:StockRepurchasedDuringPeriodValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,831</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Vesting of RSUs and PSAs</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b309e7df-b282-49aa-8609-c8fc94dd0ce3" contextRef="C_1cddb288-e964-451e-a81a-0f4156fafa21" name="us-gaap:StockRepurchasedDuringPeriodShares" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">42,810</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b4f6cb7d-38d5-447f-b4cd-10b943c1a325" contextRef="C_1cddb288-e964-451e-a81a-0f4156fafa21" name="us-gaap:StockRepurchasedDuringPeriodValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,296</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ed850f99-98fc-46a1-89c8-7a9d69a3c154" contextRef="C_d0ecbed3-ba12-4ba8-970b-d8efdb285e1e" name="us-gaap:StockRepurchasedDuringPeriodShares" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">45,881</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_663dca13-b564-4fcb-ba4f-74d1019e4cc3" contextRef="C_d0ecbed3-ba12-4ba8-970b-d8efdb285e1e" name="us-gaap:StockRepurchasedDuringPeriodValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,649</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_576efa06-03e8-457d-848a-05519bb308c0" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:StockRepurchasedDuringPeriodShares" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">355,858</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1b6718f4-35f9-46b0-8ffa-e997a37073b7" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:StockRepurchasedDuringPeriodValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">39,348</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2afeb81a-d352-4cd2-aa67-5f719ffc9f5e" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:StockRepurchasedDuringPeriodShares" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">218,698</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_871e623e-5a58-46cf-b0dd-768b809afb17" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:StockRepurchasedDuringPeriodValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30,480</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></ix:continuation></div></ix:continuation></div><div><ix:continuation id="F_64cae246-c84d-4b51-b679-254b0642c600_2"></ix:continuation></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_585baf2c-1489-4aac-98b6-999678cba62c" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" escape="true"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_10_stockbased_awards"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 10 &#8211; STOCK-BASED COMPENSATION</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company&#8217;s 2018 Amended and Restated Omnibus Incentive Plan (the &#8220;2018 A&amp;R Omnibus Plan&#8221;) allows the Company to grant up to </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_45207c83-db85-40a5-a7ca-3684132a9381" contextRef="C_3cd9094a-0fe5-47f4-88e8-26bd8d9c814f" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">2,050,000</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> total shares of common stock to officers, key employees, and non-employee directors. As of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025, the Company had approximately </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fe9c2174-3be3-4b18-b07f-40bbeb09f83b" contextRef="C_34fefb41-e415-441d-8e0d-1e45cd55375d" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">794,760</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> shares available for grant under the 2018 A&amp;R Omnibus Plan.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_04cfd77f-c77b-4fa7-994c-41d74ccc5f37" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock" escape="true"><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following awards were granted during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.413%;box-sizing:content-box;"/>
         <td style="width:1.74%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:10.958%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:2.18%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.418%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:2.2%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:11.218%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:2.5%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:12.378%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Awards Granted</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Average Grant Date Fair Value</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Employee Stock Awards</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_77d3b3b7-a37e-4688-8136-70ec5ec75e25" contextRef="C_5b2f62c2-6ae0-4941-81f5-762b8a422db0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">218,034</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b7c7a368-ec36-4507-b63c-bce8117aeb67" contextRef="C_c7ab718a-ae03-4c39-bd1e-e53f0f8c990e" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">110,754</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_349ed3ec-d321-4401-9f9a-df05858fb7d8" contextRef="C_5b2f62c2-6ae0-4941-81f5-762b8a422db0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">81.93</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_353dcee3-a447-4ebc-9c02-e5f56c5538b6" contextRef="C_c7ab718a-ae03-4c39-bd1e-e53f0f8c990e" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">156.16</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash-Settled RSUs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_450c2356-b227-4955-a889-f7dbdbe53e1d" contextRef="C_afd9333b-a288-4f47-af97-3870f9bf83fc" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">73,078</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a7ffc857-8746-4bad-8434-77bc7ebe50e9" contextRef="C_600d0231-174b-43f7-ab40-55ba78417e39" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">34,064</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_57f9c683-7277-424a-881c-1aec5b1a7bcd" contextRef="C_afd9333b-a288-4f47-af97-3870f9bf83fc" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">84.83</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e0aa6575-286d-4235-8427-6867ba1bb93b" contextRef="C_600d0231-174b-43f7-ab40-55ba78417e39" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">152.59</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f7bd3d07-0253-42d2-949b-1d9e13796b5c" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">291,112</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9b67dc8d-2e3e-48ea-885f-5b019b3c01e8" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">144,818</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></ix:nonNumeric></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> The total stock-based compensation expense was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7c586810-0184-4490-aa51-20f458435d7b" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">4.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0418b130-dc2c-455c-a493-4759926724c9" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">5.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the three months ended March 31, 2025 and 2024, respectively. The unrecognized compensation expense at March 31, 2025 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_df108ce3-0e56-43da-9447-1d0f13fe1312" contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">41.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, which is expected to vest over the next </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_59afdc42-d89c-4304-8fd5-30a4bc86aa6a" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2.1</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:nonNumeric></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">15</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_9de2a32f-d4b1-4021-a5c7-7f4f2b832bae" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock" escape="true"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_11_business_combinations"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 11 &#8211; ACQUISITIONS AND DIVESTITURES</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Acquisitions</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Applied Energy Group, Inc.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">On </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_f9049c39-5ac8-4f6a-bcaa-ff097039d49c" contextRef="C_9e6f0002-5125-45cf-a28f-bf5906a2373d" name="us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">December 31, 2024</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, the Company completed the acquisition of </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_2f398bdc-3ea1-4b76-bc16-c275c492524f" contextRef="C_e2fa8410-f9e6-4f90-84e5-0fe612923e5a" name="us-gaap:BusinessAcquisitionDescriptionOfAcquiredEntity"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">AEG </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">an energy technology and advisory services company</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_642fb074-c5fc-4780-b025-904843249439" contextRef="C_9e6f0002-5125-45cf-a28f-bf5906a2373d" name="us-gaap:PaymentsToAcquireBusinessesGross" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">60.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> in cash consideration before final net working capital adjustments. AEG provides a suite of integrated technology and advisory solutions to electric and gas utilities, state and local governments, and state energy offices nationwide which enhances the Company&#8217;s service offering and client footprint.</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_098296d0-0563-4c10-92ed-44b153e53fc7" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" escape="true"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">As part of the preliminary allocation of the purchase consideration, the Company recorded the following:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:77.08%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:20.919999999999998%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net working capital</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6e025c31-54b0-4c21-8e7a-707734caaecb" contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0" name="icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,970</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Property and equipment</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_97fee5ba-8e25-4906-beb4-ecd0dedde2fe" contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">55</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Customer-related intangibles</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_606f9f90-1f47-450c-9994-69ec0594c07a" contextRef="C_77ad4326-8766-4793-8bd1-a2a47caf60eb" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">20,000</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Developed technology</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_456aa6e9-3c23-495a-8feb-bfec11a04f9f" contextRef="C_345f4281-481c-4eee-9334-a2f509aad8d8" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,000</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Trade names and trademarks</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f2a9b16a-27ad-48ae-9796-98c55a434d28" contextRef="C_8f3abf3b-8a9b-4dd3-9b57-d61259178c47" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">350</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Goodwill</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9b095f18-982a-4f67-8cbf-83d25a507e42" contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0" name="icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">31,279</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Purchase considerations</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d87474b7-f6cf-42dc-ada1-0d5df91a4876" contextRef="C_e2fa8410-f9e6-4f90-84e5-0fe612923e5a" name="us-gaap:BusinessCombinationConsiderationTransferred1" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">60,654</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></ix:nonNumeric></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Net working capital includes restricted cash of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2aff3760-e0ac-4268-a8ab-e3fee0376a32" contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">5.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, accounts receivable of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0300d5d6-1951-4798-9c02-a0d1aee5f705" contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">4.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, contract assets of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b03affe4-68fa-4017-8057-82197a133073" contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0" name="icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, accrued expenses of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_632694d4-1d09-4335-afcd-ce33d3ac1df6" contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0" name="icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">6.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, accounts payable of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_92a99e1a-cf00-488b-8065-2e6e64672bc1" contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, and other assets and liabilities of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_15dbea6b-579d-494f-b0ba-5ccc97eff94f" contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_cdb615a7-61eb-4a64-be59-c3dd6da1f82a" contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.7</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The finalization of allocation is expected to be completed by the second quarter of 2025 and is currently open primarily for final net working capital adjustments.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_a323cd77-146c-4c31-afe8-cbdda360c42d" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" escape="true" continuedAt="F_a323cd77-146c-4c31-afe8-cbdda360c42d_1"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The estimated useful lives of acquired intangible assets are as follows:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:77.08%;box-sizing:content-box;"/>
         <td style="width:22.92%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Customer-related intangibles</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><ix:nonNumeric id="F_99e39592-86af-4d71-b3a0-89bf3b96d1e7" contextRef="C_c54427f6-4d40-4ed9-a059-5e5e46151c50" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.0</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;years</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Developed technology</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><ix:nonNumeric id="F_b75bde00-5503-4359-b8bc-0839c3edd0d7" contextRef="C_c284df75-1ba0-4f3b-a4f2-955dd514609a" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.0 </span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">years</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Trade names and trademarks</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><ix:nonNumeric id="F_71c38347-8657-4790-8158-2f44a3dc272e" contextRef="C_04c3445e-c079-4c5f-9e9a-5d1a87eddcde" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:durmonth"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.5</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;months</span></p></td>
        </tr>
       </table></ix:nonNumeric></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span><ix:continuation id="F_a323cd77-146c-4c31-afe8-cbdda360c42d_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">T</span></ix:continuation></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">he Company revised customer-related intangibles from an initial estimate of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_45bcf81e-c272-4421-b934-c63dcd27baec" contextRef="C_fc2ef133-12c4-4171-a846-46c299d306c3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">21.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3684ab25-4cef-48bc-9e56-c21640bdaf79" contextRef="C_77ad4326-8766-4793-8bd1-a2a47caf60eb" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">20.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and estimated useful life from </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_62d95e09-ec6f-4491-b119-0375bc554691" contextRef="C_93505554-9748-4f89-98a3-9b6f74dbca8c" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">9.0</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years to </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_232b9070-6b93-4f5d-88a2-0553bc2d27e0" contextRef="C_c54427f6-4d40-4ed9-a059-5e5e46151c50" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">6.0</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years as a result of new information received during the quarter ended March 31, 2025.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The goodwill is attributable to the workforce of AEG and expected synergies with the Company. Goodwill has an indefinite life and is deductible for income tax purposes. The pro-forma impact of the acquisition is not material to the Company&#8217;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">s results of operations.</span></p></ix:nonNumeric></div><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_f9ab6b31-63c5-4424-ab8c-3f34701dfa73" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EarningsPerShareTextBlock" escape="true"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_11_earnings_per_share"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 12 &#8211; EARNINGS PER SHARE</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_7fbb0969-bfcf-4011-807e-300f3f55aeb0" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" escape="true"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Earnings per share (&#8220;EPS&#8221;), including the dilutive effect of stock awards for each period reported is summarized below:</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:62.647%;box-sizing:content-box;"/>
         <td style="width:1.96%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:14.717%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.96%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:14.717%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands, except per share data)</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net Income</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b8a30bed-249d-4cf8-a344-428b81466b31" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">26,851</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_391a1ce2-f6fe-424e-bfe3-8d486677076d" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27,317</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Weighted-average number of basic shares outstanding during the period</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6eb964cd-3dc2-4730-a84c-4e6b08782cfe" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,506</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a95afd9b-f6c9-493d-aa8e-651f8a2cdd72" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,757</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Dilutive effect of stock awards</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d2c42c83-9718-4feb-b8ac-e54501c0f880" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">107</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_750edd4e-06b3-4c80-81ed-f5db541dcd8d" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">189</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Weighted-average number of diluted shares outstanding during the period</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2500eb7b-5d81-450f-b48e-c16c329ca6fe" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,613</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fd02ff59-8916-4130-ae62-d43739c63136" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,946</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic EPS</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_949a928f-e5f5-496a-a2fe-d6ad0a9a4c7a" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.45</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7d001e8e-117a-441a-be15-9fa06ed2322c" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.46</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted EPS</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b538b616-1ad6-43ad-8bb5-838582f93a59" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.44</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1d997621-1db5-4669-a6bf-8ce8ae06d662" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.44</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></ix:nonNumeric></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">A total of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a088503e-2c6a-42dd-9049-db594efc4155" contextRef="C_359bce9d-0b82-4401-934b-1a14d1fb9b89" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">79,863</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> shares of restricted stock awards were excluded from the calculation of EPS for the three months ended March 31, 2025</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> because they were anti-dilutive. There were </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5a188896-f08f-4afd-b5d4-b679c1273ec5" contextRef="C_606932a5-5f82-45d9-b5fe-618a80a169b5" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">10,901</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> shares excluded for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span></p></ix:nonNumeric></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">16</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_8681b47c-eaf3-48cb-bed7-b0ad6eaa1e97" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:FairValueDisclosuresTextBlock" escape="true"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_12_fair_value"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 13 &#8211; FAIR VALUE</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_bbaa3a2a-6c93-4e63-8a52-74e057dd13a9" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" escape="true"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Financial instruments measured at fair value on a recurring basis and their location within the accompanying consolidated balance sheets are as follows:</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:40.98%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:4.58%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.38%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:4.58%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.38%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:4.58%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.38%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:4.58%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.38%;box-sizing:content-box;"/>
         <td style="width:27.18%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands)</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 1</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 2</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 3</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Location on Balance Sheet</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Assets:</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c12cf953-65a6-4be0-ba96-b23e9889f325" contextRef="C_1c5f0b7a-89d2-4fbf-b457-f53569fe6777" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">197</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7c1694dd-a674-4c7d-a8f5-b7e744580eea" contextRef="C_f84c9782-f8ab-4f6a-b349-2b609fdec6dc" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">197</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Company-owned life insurance policies</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ba51ff74-709f-483c-b56e-83dfd6f5cd54" contextRef="C_eee9c0ed-4279-41c1-86a0-a7968bfdf78b" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">22,927</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_550a60ab-6740-45ab-b5df-aa1b6a755cb4" contextRef="C_0b23d0b4-7b10-4543-9657-854b7ce89dd4" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">22,927</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other assets</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Liabilities:</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_df12942e-1240-4439-82bb-a7a60ea685a8" contextRef="C_23ecbd7d-b4ab-4be4-b21b-0c94dc3a62c0" name="us-gaap:FinancialLiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">240</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_81929341-28b1-4a7d-9bb7-5198d54d7b75" contextRef="C_0e036038-5185-45ec-bc46-7db5540888de" name="us-gaap:FinancialLiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">240</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - long-term portion</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4a02416c-9ce9-4a32-8f0b-7ed72428699f" contextRef="C_5c6ef9ed-d6a9-425e-8d10-b25381323fbc" name="us-gaap:FinancialLiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,716</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5871f851-5567-4501-9487-c8fcc4ef6c2e" contextRef="C_4e228a4a-1d27-4d01-9790-529f658e7a58" name="us-gaap:FinancialLiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,716</ix:nonFraction></span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other long-term liabilities</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:40.98%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:4.58%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.38%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:4.58%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.38%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:4.58%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.38%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:4.58%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:1.38%;box-sizing:content-box;"/>
         <td style="width:27.18%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands)</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 1</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 2</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 3</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Location on Balance Sheet</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Assets:</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1ad01510-351c-4ddc-9ff0-e4bd1ba62e0b" contextRef="C_ec67ad54-e2c6-459b-ac2a-1c80507eef70" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">825</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ff9e6022-fdc3-4977-a857-f6e2a1dc5da8" contextRef="C_3a796a9d-5766-4805-8b2a-2ff890188751" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">825</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - long-term portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_496f30a6-8f30-47e3-aa95-dde7116ccf75" contextRef="C_e556f098-db10-4065-8c0f-c09bcb16d0b8" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">129</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_246b594f-418a-42ce-baba-d5a3d8b17caa" contextRef="C_e86b3d44-b8ec-4784-aebd-c72412fc6544" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">129</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other assets</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Company-owned life insurance policies</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_917eac01-fbe6-4c54-95ae-ee11ae0d6b0c" contextRef="C_5647a77d-445a-47db-8541-6af6f2e97582" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,174</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_51e9d476-4840-44c5-b040-bcb434a35811" contextRef="C_ec06fe12-c155-40f5-94db-0bce2d5ef1d4" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,174</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other assets</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Liabilities:</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_07e852a4-b19a-4dcd-b44e-79fbb061a24b" contextRef="C_57bb215b-5356-401f-8995-dd1b215e7488" name="us-gaap:FinancialLiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f75bb201-5fb9-4624-82c0-97723d3ffe48" contextRef="C_e5627bea-4bc9-4e67-8942-517566d89aaa" name="us-gaap:FinancialLiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - long-term portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ac9dcceb-db39-424d-8e7a-b91c7a58360d" contextRef="C_1f387a1f-cbe1-491e-9324-6f5097db4eb4" name="us-gaap:FinancialLiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">153</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5ffd434d-edea-438d-904a-8a4edf034be8" contextRef="C_1c2ff08b-dd48-45ac-8d1c-5d0adee40de1" name="us-gaap:FinancialLiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">153</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other long-term liabilities</span></p></td>
        </tr>
       </table></ix:nonNumeric></div></ix:nonNumeric></div><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_0cf941cd-edbd-47c6-9877-48002e9b7774" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" escape="true"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_13_commitments_contingencies"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 14 &#8211; COMMITMENTS AND CONTINGENCIES</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Letters of Credit and Guarantees</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company had open standby letters of credit totaling </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d364f290-8e6e-479d-b9ad-02a723865e4a" contextRef="C_65b8a2bd-11e0-47d3-a8bf-6ada5559cac9" name="us-gaap:LettersOfCreditOutstandingAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_039ae6c2-6241-4e2b-9bdf-40ab0df6b633" contextRef="C_b74866ce-58e9-4265-8578-7a14309d87ec" name="us-gaap:LettersOfCreditOutstandingAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.6</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> at both March 31, 2025 and December 31, 2024, respectively. Open standby letters of credit reduce the Company&#8217;s borrowing capacity under the Credit Facility.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At March 31, 2025 and December 31, 2024, the Company had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_08ead169-6cea-4119-98da-9fd1ea7c807e" contextRef="C_65b8a2bd-11e0-47d3-a8bf-6ada5559cac9" name="icfi:LettersOfCreditGuarantees" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">8.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7a876930-022b-4df5-a594-c864128c1d63" contextRef="C_b74866ce-58e9-4265-8578-7a14309d87ec" name="icfi:LettersOfCreditGuarantees" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">8.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively, of bank guarantees for facility leases and contract performance obligations.</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Litigation and Claims</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company is involved in various legal matters and proceedings arising in the ordinary course of business. While these matters and proceedings cause it to incur costs, including, but not limited to, attorneys&#8217; fees, the Company currently believes that any ultimate liability arising out of these matters and proceedings will not have a material adverse effect on its financial position, results of operations, or cash flows.</span></p></ix:nonNumeric></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div><ix:nonNumeric id="F_4a8b7a82-64cc-4508-916e-4dd574a55cd3" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:SegmentReportingDisclosureTextBlock" escape="true" continuedAt="F_4a8b7a82-64cc-4508-916e-4dd574a55cd3_1"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="note_15_segment_information"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 15 </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8211; SEGMENT INFORMATION</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company provides a broad array of professional services to its clients across several markets, primarily within the U.S. The Company operates as a </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_51a00615-6914-48fa-8ed4-d69f50bb4d78;"><span style="-sec-ix-hidden:F_c0061dbd-9be7-4634-b204-9d0261eda80d;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">single</span></span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> reportable and operating segment because the chief operating decision maker (the &#8220;</span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_f92f70f9-2dcc-40b9-bd51-72c6f9b0dfea;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">CODM&#8221;), which is the Chief Executive Officer</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, manages the business activities on a consolidated basis. Although the Company disaggregates revenue by client market and client type, it does not manage its business or allocate resources based on client market or type.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_074b04c5-6743-4521-8f3f-399b6706b379" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:SegmentReportingCodmProfitLossMeasureHowUsedDescription"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The CODM assesses segment performance based on consolidated net income as reported on the Company&#8217;s consolidated statements of comprehensive income. The CODM uses consolidated net income to evaluate the Company&#8217;s performance against budgets and decide whether to use the profits to invest in the business, pay down debt, repurchase stock, pay dividends, or fund acquisitions.</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Asset information provided to the CODM is not used for the purpose of making decisions and assessing performance of the Company.</span></p></ix:nonNumeric></div></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">17</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div><ix:continuation id="F_4a8b7a82-64cc-4508-916e-4dd574a55cd3_1"><div style="font-size:11pt;font-family:'Calibri',sans-serif;"><ix:nonNumeric id="F_cdea3eef-0ae5-42bb-8db1-2c58851095b7" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" escape="true"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The segment revenue, significant segment expenses, and segment profit are as follows:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:52.101%;box-sizing:content-box;"/>
         <td style="width:2.681%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:19.267999999999997%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:2.681%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
         <td style="width:19.267999999999997%;box-sizing:content-box;"/>
         <td style="width:1%;box-sizing:content-box;"/>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Revenue</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d89e2862-e8ba-4375-ae80-e937da546c47" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">487,618</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1abf5aac-10bd-4774-9bdf-cfc7f387d79b" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">494,436</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Significant segment expenses:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Direct labor and related fringe costs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d194a821-83b8-43ca-ad8a-da48ed3b53fc" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:DirectLaborAndRelatedFringeCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">191,930</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1343537b-5b19-4e63-bc9a-689ae29170b5" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="icfi:DirectLaborAndRelatedFringeCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">190,023</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Subcontractors and other direct costs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b5bc4b2b-eb3b-43ac-883e-e5b28a0ad7dc" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="icfi:SubcontractorsAndOtherDirectCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">110,612</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0b7632bc-63e7-492b-af8d-8a53687ca14b" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="icfi:SubcontractorsAndOtherDirectCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">120,510</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Indirect and selling expenses</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b5c0b45c-2a6e-4e2b-ba9e-ccd56784bd92" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:SellingGeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">131,891</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b9b434b8-9643-4b8e-91de-6d7eb7783c64" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:SellingGeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">129,094</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Depreciation and amortization</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_eb0fb6b8-138f-49f0-a04d-5ac3ab3e5915" contextRef="C_7a0c649b-3e1d-4d1d-a3a3-b66c1bc2cf25" name="us-gaap:DepreciationAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,318</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7c25f16a-f663-4349-9eb9-90504dd5197d" contextRef="C_ba5d0763-b64a-43dc-9a60-fcaaa4cb3e0c" name="us-gaap:DepreciationAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,574</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Amortization of intangible assets acquired in business combinations</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cce3402f-83de-4c05-bbfc-008237e1d0a2" contextRef="C_82d21078-75e2-4645-abab-f2cc96112b68" name="us-gaap:DepreciationAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">9,477</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ddf506e5-57e0-4b69-9402-18e7bda5c560" contextRef="C_d5debb6a-e3cd-4c36-a151-a29229e8eeac" name="us-gaap:DepreciationAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,291</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest expense</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4932a045-2736-4ae8-a3f5-bcf0cbc5c5f5" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:InterestExpenseNonoperating" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,423</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e408f3d6-3de6-4f70-8601-f98aa3aa6cef" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:InterestExpenseNonoperating" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,329</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provision for income taxes</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7bcf1655-eac8-471f-bfa8-8ccff48e8718" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,150</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_63e0801d-9a90-488a-9559-fba30e20d94e" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,019</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Other segment expense (income) </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:bold;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3b5959ed-33ee-49ef-895c-d4f212203bc1" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:SegmentReportingOtherItemAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">966</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c2dfb09f-6a50-48d2-8603-139c164d9f42" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:SegmentReportingOtherItemAmount" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,721</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net Income</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_367fe8a1-65de-4be0-99c7-22f3e3cf258d" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">26,851</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_980a4fb0-7573-460f-a6bc-971b9db4fc5a" contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27,317</ix:nonFraction></span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(1)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span><ix:footnote id="FNT_e395be57-cd1e-4f15-8a0a-58d6cbdf31f4" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Other segment expense (income) includes interest income, foreign currency expense, and gains/losses on disposition of assets.</span></ix:footnote></p></ix:nonNumeric></div></ix:continuation></div></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">18</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="text-indent:-9.971%;padding-left:9.067%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_2___managements_discussion_analysis"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Item 2. Management&#8217;s Discussion and Analysis</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> of Financial Condition and Results of Operations</span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">FORWARD-LOOKING STATEMENTS</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Some of the statements in this Quarterly Report on Form 10-Q (this &#8220;Quarterly Report&#8221;) constitute forward-looking statements as defined in the Private Securities Litigation Reform Act of 1995, as amended. These statements involve known and unknown risks, uncertainties, and other factors that may cause our actual results, levels of activity, performance, or achievements to be materially different from any future results, levels of activity, performance, or achievements expressed or implied by such forward-looking statements. In some cases, you can identify these statements by forward-looking words such as &#8220;anticipate,&#8221; &#8220;believe,&#8221; &#8220;could,&#8221; &#8220;estimate,&#8221; &#8220;expect,&#8221; &#8220;intend,&#8221; &#8220;may,&#8221; &#8220;plan,&#8221; &#8220;potential,&#8221; &#8220;should,&#8221; &#8220;will,&#8221; &#8220;would,&#8221; or similar words. You should read statements that contain these words carefully. The risk factors described in our filings with the Securities and Exchange Commission (the &#8220;SEC&#8221;), as well as any cautionary language in this Quarterly Report, provide examples of risks, uncertainties, and events that may cause actual results to differ materially from the expectations described in the forward-looking statements, including, but not limited to:</span></p><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Failure by Congress or other governmental bodies to approve budgets and debt ceiling increases in a timely fashion and related reductions in government spending;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Uncertainties relating to the new presidential administration (the &#8220;Administration&#8221;) and failure of the Administration to spend Congressionally mandated appropriations;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Failure of the Administration and Congress to agree on spending priorities, which may result in temporary shutdowns of non-essential federal functions, including our work to support such functions;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Changes in federal government budgeting and spending priorities;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Results of routine and non-routine government audits and investigations, including the unpredictability of the Administration&#8217;s executive orders and actions of the newly formed Department of Government Efficiency (&#8220;DOGE&#8221;);</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Risks resulting from expanding our service offerings and client base;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Our dependence on contracts with United States (&#8220;U.S.&#8221;) federal, state and local, and international governments, agencies, and departments for the majority of our revenue;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Risks inherent in being engaged in significant and complex disaster relief efforts and grant management programs involving multiple tiers of government in very stressful environments;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Failure to realize the full amount of our backlog;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Dependence of our commercial work on certain sectors of the global economy that are highly cyclical;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Difficulties in identifying attractive acquisitions available at acceptable prices;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Acquisitions we undertake presenting integration challenges, failing to perform as expected, increasing our liabilities, and/or reducing our earnings; and</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Additional risks as a result of having international operations.</span></div></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Our forward-looking statements are based on the beliefs and assumptions of our management and the information available to our management at the time these disclosures were prepared. Although we believe the expectations reflected in these statements are reasonable, we cannot guarantee future results, levels of activity, performance, or achievements. You should not place undue reliance on these forward-looking statements, which apply only as of the date of this Quarterly Report. We undertake no obligation to update these forward-looking statements, even if our situation changes in the future.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The terms &#8220;we,&#8221; &#8220;our,&#8221; &#8220;us,&#8221; and &#8220;the Company,&#8221; as used throughout this Quarterly Report, refer to ICF International, Inc. and its subsidiaries, unless otherwise indicated. The terms &#8220;federal&#8221; or &#8220;federal government&#8221; refer to the U.S. federal government, and &#8220;state and local&#8221; or &#8220;state and local government&#8221; refer to U.S. state and local governments and the governments of U.S. territories. The following discussion and analysis is intended to help the reader understand our business, financial condition, results of operations, and liquidity and capital resources. You should read this discussion in conjunction with our consolidated financial statements and the related notes contained elsewhere in this Quarterly Report and our Annual Report on Form 10-K for the fiscal year ended December 31, 2024, filed with the SEC on February 28, 2025 (our &#8220;Annual Report&#8221;).</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">19</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">OVERVIEW AND OUTLOOK</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We provide professional services and technology-based solutions, including management, technology, and policy consulting and implementation services. We help our clients conceive, develop, implement, and improve solutions that address complex business, natural resource, social, technological, and public safety issues. Our services primarily support clients that operate in three key markets:</span></p><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Energy, Environment, Infrastructure, and Disaster Recovery;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Health and Social Programs; and</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Security and Other Civilian &amp; Commercial.</span></div></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We provide services to our diverse client base that deliver value throughout the entire life cycle of a policy, program, project, or initiative. Our primary services include:</span></p><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Advisory Services;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Program Implementation Services;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Analytics Services;</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Digital Services; and</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.752626672113803%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Engagement Services.</span></div></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We believe that, in the long-term, demand for our services will continue to grow as government, industry, and other stakeholders seek to address critical long-term societal and natural resource issues due to heightened concerns about the environment and use of clean energy and energy efficiency; health promotion, treatment, and cost control; the means by which healthcare can be delivered effectively on a cross-jurisdiction basis; natural disaster relief and rebuild efforts; and ongoing homeland security threats. In the wake of the major hurricanes that devastated communities in Texas, Florida, North Carolina, Louisiana, the U.S. Virgin Islands, and Puerto Rico, and the impact of wildfires in Hawaii, Oregon, and southern California, the affected areas remain in various stages of evacuation, relief, and recovery efforts. We believe our prior and current experience with disaster relief and rebuild efforts, including after hurricanes Katrina and Rita and Superstorm Sandy, and the wildfires in Oregon, put us in a favorable position to continue to provide recovery and housing assistance, and environmental and infrastructure solutions, including disaster mitigation, on behalf of federal departments and agencies, state, territorial, and local jurisdictions, and regional agencies.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">As the federal government sharpens its focus on efficiency, transparency, consolidation, and accountability, we see growth opportunities for ICF&#8217;s fit-for-purpose technology solutions. Our offerings are innovative, agile, scalable, and aligned with commercial best practices, delivering clear and measurable outcomes. By combining deep institutional knowledge of our clients&#8217; markets and data with our proven expertise in AI, open source, cloud-native, and commercially off the shelf low-code and no-code platforms, we are able to deliver highly functional, cost-effective solutions that meet the evolving demands of our customers while driving greater value and impact for taxpayers.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Our future results will depend on the success of our strategy to enhance our client relationships and seek larger engagements that span the entire program life cycle, and to complete and successfully integrate additional strategic acquisitions. We will continue to focus on building scale in our vertical and horizontal domain expertise, developing business with our existing clients as well as new customers, and replicating our business model in selective geographies. In doing so, we will continue to evaluate strategic acquisition opportunities that enhance our subject matter knowledge, broaden our service offerings, gain access to or expand customer relationships, and/or provide scale in specific geographies.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Although we continue to see favorable long-term market opportunities, there are certain business challenges facing all government service providers. The very nature of opportunities arising out of disaster recovery means they can involve unusual challenges. Factors such as the overall stress on communities and people affected by disaster recovery situations, political complexities, challenges among involved government agencies, and a higher-than-normal risk of audits and investigations may result in a reduction to our revenue and profit and adversely affect cash flow; however, we believe we are well positioned to provide a broad range of services in support of initiatives that will continue to be priorities to the federal government, as well as to state and local and international governments and commercial clients.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">As discussed in Part II, Item 7 of our Annual Report, during the three months ended March 31, 2025, we received notices for termination-for-convenience pursuant to the recent executive orders issued by the Administration or actions by DOGE. The revenue recognized in fiscal year 2024 from the contracts subject to these terminations represented approximately 5.7% of the total 2024 fiscal year revenue and approximately $375.0 million of our $3.4 billion backlog as of March 31, 2025.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In addition, subsequent to March 31, 2025, the Company received additional termination-for-convenience notices representing approximately $12.0 million of future contract value.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">20</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">RESULTS OF OPERATIONS</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2025 Compared to Three Months Ended March 31, 2024</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The table below sets forth select line items of our unaudited consolidated statements of comprehensive income, the percentage of revenue for these select items, and the period-over-period rate of change and percentage of revenue for the periods indicated.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:29.76%;box-sizing:content-box;"/>
     <td style="width:1.24%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:8.32%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1.24%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:8.280000000000001%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:8.76%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:9%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1.04%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:8.28%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:9.08%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percentages of Revenue</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Year-to-Year Change</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">&#160;(dollars in thousands)</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Revenue</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">487,618</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">494,436</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100.0</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100.0</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(6,818</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(1.4</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Direct Costs:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Direct labor and related fringe benefit costs</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">191,930</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">190,023</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">39.4</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">38.4</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,907</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.0</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Subcontractor and other direct costs</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">110,612</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">120,510</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">22.7</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24.4</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(9,898</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(8.2</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total Direct Costs</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">302,542</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">310,533</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">62.0</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">62.8</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(7,991</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(2.6</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Operating Costs and Expenses:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Indirect and selling expenses</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">131,891</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129,094</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27.0</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26.1</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,797</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.2</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Depreciation and Amortization:</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:15pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:2.773%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Depreciation and amortization</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,318</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,574</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.1</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.1</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(256</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(4.6</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:15pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:2.773%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Amortization of intangible assets acquired in business combinations</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">9,477</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,291</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.9</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.7</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,186</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14.3</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total Depreciation and Amortization</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,795</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,865</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.0</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.8</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">930</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.7</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total Operating Costs and Expenses</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">146,686</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">142,959</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">30.0</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">28.9</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,727</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.6</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Operating Income</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">38,390</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">40,944</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8.0</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8.3</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(2,554</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(6.2</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest, net</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(7,337</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(8,238</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(1.5</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(1.7</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">901</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(10.9</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other (expense) income</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(1,052</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,630</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(0.2</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.3</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(2,682</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(164.5</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Income before Income Taxes</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">30,001</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">34,336</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.3</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.9</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(4,335</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(12.6</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Provision for Income Taxes</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,150</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7,019</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.6</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.4</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(3,869</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(55.1</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net Income</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26,851</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27,317</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.7</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.5</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(466</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(1.7</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
    </tr>
   </table><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Revenue.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> The decrease in revenue was driven by a decrease of $34.6 million from our U.S. federal government clients primarily as a result of terminated contracts in the first quarter of 2025 due to the Administration&#8217;s changing priorities and the actions of DOGE, as well as the disruption of the typical U.S. federal government procurement cycle. This decline was offset by increases of $26.0 million and $1.8 million from our commercial and international government clients, respectively. The following were changes in revenue from our various client markets:</span></p><div class="item-list-element-wrapper" style="margin-left:4.528%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Energy, Environment, Infrastructure, and Disaster Recovery client market revenues increased $13.9 million, or 6.2%, driven primarily by increases of $21.9 million and $0.9 million from our commercial and international government clients, respectively, offset by decreases of $6.8 million and $2.1 million from our U.S. federal government and U.S. state and local government clients, respectively.</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.528%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Health and Social Programs client market revenues decreased $21.9 million, or 11.5%, driven primarily by a decrease of $24.6 million from our U.S. federal government clients, slightly offset by increases of $1.8 million and $0.8 million from our U.S. state and local government and commercial clients, respectively.</span></div></div><div class="item-list-element-wrapper" style="margin-left:4.528%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Security and Other Civilian &amp; Commercial client market revenues increased by $1.2 million, or 1.5%, primarily driven by increases of $3.3 million, $0.8 million, and $0.3 million from our commercial, international government, and U.S. state and local government clients, respectively, offset by a decrease of $3.2 million from our U.S. federal government clients.</span></div></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Revenue for the three months ended March 31, 2025 includes subcontractor and other direct costs, which decreased $9.9 million, or 8.2%, from the first quarter of 2024 and totaled $110.6 million and $120.5 million for the three months ended March 31, 2025 and 2024, respectively, and the margin on such costs.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">21</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Direct Costs</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> The decrease of $8.0 million in direct costs was driven by a reduction in subcontractor and other direct costs, slightly offset by an increase in direct labor and related fringe benefit costs. For the three months ended March 31, 2025 and 2024, direct labor and related fringe benefit costs as a percentage of direct costs were 63.4% and 61.2%, respectively, and subcontractor and other direct costs as a percentage of direct costs were 36.6% and 38.8%, respectively. As a percentage of revenue, direct labor and related fringe benefit costs were 39.4% and 38.4%, respectively, and subcontractor and other direct costs were 22.7% and 24.4%, respectively, for the three months ended March 31, 2025 and 2024. Total direct costs as a percentage of revenue were 62.0% for the three months ended March 31, 2025, compared to 62.8% for the three months ended March 31, 2024.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Indirect and selling expenses.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> For the three months ended March 31, 2025, our indirect and selling expenses increased by $2.8 million, or 2.2%, compared to the prior year, as a result of an increase of $3.2 million in indirect labor and related fringe benefit costs, due in part to the impact of severance in the current period, which was offset by a decrease of $0.5 million in general and administrative costs. As a result, our indirect and selling expenses as a percentage of revenue increased to 27.0% for the three months ended March 31, 2025 from 26.1% for the three months ended March 31, 2024.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Depreciation and amortization</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Our depreciation and amortization for the three months ended March 31, 2025 was $5.3 million which is comparable to depreciation and amortization of $5.6 million for the three months ended March 31, 2024.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The increase in amortization of intangible assets acquired in business combinations was primarily due to the amortization of intangible assets acquired in our acquisition in the fourth quarter of 2024.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Interest, net.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> The decrease of $0.9 million in interest, net, was primarily from a decrease of our interest rates. Use of floating-to-fixed interest rate swap agreements to hedge the variable interest portion of our debt reduced our interest expense by $0.7 million for the three months ended March 31, 2025 compared to $1.7 million for the same period in 2024. Inclusive of the impact of the swap agreements, our interest expense for the three months ended March 31, 2025 was $6.6 million compared to $7.2 million for the same period in 2024 and our interest rate inclusive of the swap agreements was 5.1% for the three months ended March 31, 2025 compared to 5.6% for 2024.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Other (expense) income. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The change in other (expense) income was primarily due to a gain of $1.7 million recognized in the first quarter of 2024 related to the divestiture of our commercial marketing business and losses on foreign currency rate in the first quarter of 2025.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Provision for Income Taxes</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Our effective income tax rate for the three months ended March 31, 2025 and 2024 was 10.5% and 20.4%, respectively. The difference was primarily due to an income tax benefit of $4.5 million recognized in the first quarter of 2025 from tax planning implemented in connection with the &#8220;transitional rules&#8221; governing unrealized foreign exchange gains and losses derived from translation of operations, assets and liabilities of non-U.S. qualified subsidiaries provided by recently finalized U.S. federal tax regulations on Internal Revenue Code 987.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NON-GAAP MEASURES</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following tables provide reconciliations of financial measures that are not calculated in accordance with generally accepted accounting principles in the U.S. (&#8220;non-GAAP&#8221;) to their most comparable U.S. GAAP measures. While we believe that these non-GAAP financial measures provide additional information to investors and may be useful in evaluating our financial information and assessing ongoing trends to better understand our operations, they should be considered supplemental in nature and not as a substitute for financial information prepared in accordance with U.S. GAAP. Other companies may define similarly titled non-GAAP measures differently, thus limiting their use for comparability.</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">EBITDA and Adjusted EBITDA</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Earnings before interest, tax, and depreciation and amortization (&#8220;EBITDA&#8221;) is a measure we use to evaluate operating performance. Adjusted EBITDA is EBITDA further adjusted to eliminate the impact of certain items that we do not consider to be indicative of the performance of our ongoing operations (&#8220;Adjusted EBITDA&#8221;). We evaluate these adjustments on an individual basis based on both the quantitative and qualitative aspects of the item, including their size and nature, as well as whether we expect them to recur as part of our normal business on a regular basis.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">EBITDA and Adjusted EBITDA are not intended to be measures of free cash flow as these measures do not include certain cash requirements such as interest payments, tax payments, capital expenditures, and debt service.</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">22</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table presents a reconciliation of net income to EBITDA and Adjusted EBITDA for the periods indicated.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:66.673%;box-sizing:content-box;"/>
     <td style="width:1.74%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:12.923%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1.74%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:12.923%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(in thousands)</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net income</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26,851</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27,317</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest, net</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7,337</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,238</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provision for income taxes</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,150</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7,019</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Depreciation and amortization</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,795</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,865</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">EBITDA</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">52,133</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">56,439</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Acquisition and divestiture-related expenses </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">259</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">66</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Severance and other costs related to staff realignment </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,550</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">365</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Charges related to office closures</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">&#160;(3)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">256</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Pre-tax gain from divestiture of a business </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(4)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(1,715</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total Adjustments</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,065</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(1,284</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Adjusted EBITDA</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">55,198</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">55,155</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">These are primarily third-party costs related to acquisitions and integration of acquisitions.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">These costs are mainly due to involuntary employee termination benefits for our officers, and employees who have been notified that they will be terminated as part of a business reorganization or exit.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">These are charges related to the closure of certain international offices.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(4)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Pre-tax gain related to the 2023 divestiture of our U.S. commercial marketing business which include contingent gains realized in the first quarter of 2024.</span></div></div><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Non-GAAP Diluted Earnings per Share</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Non-GAAP diluted earnings per share (&#8220;Non-GAAP Diluted EPS&#8221;) represents diluted U.S. GAAP earnings per share (&#8220;U.S. GAAP Diluted EPS&#8221;) excluding the impact of certain items noted above, amortization of intangible assets, and the related income tax effects. While these adjustments may be recurring and not infrequent or unusual, we do not consider these adjustments to be indicative of the performance of our ongoing operations. We believe that the supplemental adjustments provide additional useful information to investors.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table presents a reconciliation of U.S. GAAP Diluted EPS to Non-GAAP Diluted EPS for the periods indicated.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:73.62%;box-sizing:content-box;"/>
     <td style="width:2.58%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:10.3%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:2.58%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:6.92%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">U.S. GAAP Diluted EPS</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.44</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.44</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Acquisition and divestiture-related expenses</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.01</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Severance and other costs related to staff realignment</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.14</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.02</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Charges related to office closures </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.01</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.04</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Pre-tax gain from divestiture of a business</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(0.09</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Amortization of intangible assets acquired in business combinations</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">&#160;(2)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.51</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.44</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income tax effects of the adjustments </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(3)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(0.17</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(0.08</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Non-GAAP Diluted EPS</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.94</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.77</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
   </table><p style="margin-left:3.333%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">These are office closure charges previously included in Adjusted EBITDA and accelerated depreciation related to fixed assets for planned office closures.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the three months ended March 31, 2025 and 2024, amortization of intangible assets acquired from business combinations totaled $9.5 million and $8.3 million, respectively.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Income tax effects were calculated using the effective tax rate, adjusted for certain discrete items, if any, of 25.3% and 20.4% for the three months ended March 31, 2025 and 2024, respectively. </span></div></div></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">23</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">LIQUIDITY AND CAPITAL RESOURCES</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Liquidity and Borrowing Capacity</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> In addition to cash and cash equivalents on hand and cash generated from operations, our primary source of liquidity is from our Credit Facility with a syndicate of multiple commercial banks, as described in &#8220;Note 5 </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Debt&#8221; in the &#8220;Notes to Consolidated Financial Statements&#8221; in this Quarterly Report. The Credit Facility requires that we remain in compliance with certain financial and non-financial covenants (as defined by the Credit Agreement, see &#8220;Note 10 &#8211; Long-Term Debt&#8221; in the &#8220;Notes to Consolidated Financial Statements&#8221; in our Annual Report for additional details). As of March 31, 2025, we were in compliance with the covenants and we had $448.4 million available under the Credit Facility to fund our ongoing operations, future acquisitions, dividend payments, and share repurchase program.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We have entered into floating-to-fixed interest rate swap agreements for a total notional value of $175.0 million to hedge a portion of our floating-rate Credit Facility. The swap agreements will expire in 2028 and we may consider entering into additional swap agreements before these existing hedges expire. As of March 31, 2025, the percentage of our fixed-rate debt to floating-rate debt was 35%.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">There are other conditions, such as the ongoing wars in Ukraine and the Middle East and volatility in global trade (including the imposition of tariffs), that create uncertainty in the global economy, which in turn may impact, among other things, our ability to generate positive cash flows from operations and our ability to successfully execute and fund key initiatives. However, our current belief is that the combination of internally generated funds, available bank borrowing capacity, and cash and cash equivalents on hand will provide the required liquidity and capital resources necessary to fund ongoing operations, customary capital expenditures, quarterly cash dividends, share repurchases, and organic growth. Additionally, we continuously analyze our capital structure to ensure we have capital to fund future strategic acquisitions.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We continuously monitor the state of the financial markets to assess the availability of borrowing capacity under the Credit Facility and the cost of additional capital from both debt and equity markets. At present, we believe we will be able to continue to access these markets on commercially reasonable terms and conditions if we need additional capital in the near term.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Dividends.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> We have historically paid quarterly cash dividends to our stockholders of record at $0.14 per share. Total dividend payments during the three months ended March 31, 2025 were $2.6 million.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Cash dividends declared thus far in 2025 are as follows:</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:40.528%;box-sizing:content-box;"/>
     <td style="width:2.14%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:16.622999999999998%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:2.14%;box-sizing:content-box;"/>
     <td style="width:18.284%;box-sizing:content-box;"/>
     <td style="width:2.14%;box-sizing:content-box;"/>
     <td style="width:16.143%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dividend Declaration Date</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dividend Per Share</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Record Date</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Payment Date</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">February 27, 2025</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.14</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 28, 2025</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">April 14, 2025</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">May 1, 2025</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.14</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">June 6, 2025</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">July 11, 2025</span></p></td>
    </tr>
   </table><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Cash Flow.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> The following table sets forth our sources and uses of cash for the three months ended March 31, 2025 and 2024:</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:66.98%;box-sizing:content-box;"/>
     <td style="width:1.6%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:12.9%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1.6%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:12.92%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(in thousands)</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net Cash Used in Operating Activities</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(33,034</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(10,001</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net Cash Used in Investing Activities</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(3,452</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(3,511</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net Cash Provided by Financing Activities</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">41,024</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,833</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Effect of Exchange Rate Changes on Cash, Cash Equivalents, and Restricted Cash</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">737</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(171</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
    <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net Change in Cash, Cash Equivalents, and Restricted Cash</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,275</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(4,850</span></p></td>
     <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
    </tr>
   </table><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Cash used in operating activities increased by $23.0 million to $33.0 million due to the timing of invoicing our customers and subsequent collection of cash and paying our vendor payments, offset by the profitability of our contracts.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Cash used in investing activities decreased by $0.1 million due to a decrease in capital expenditures offset by a decrease in cash proceeds from the divestiture of our U.S. commercial marketing business.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Cash provided by financing activities increased by $32.2 million due to increased net borrowings from our Credit Facility and short-term borrowings, partially offset by an increase in share repurchases during the first quarter of 2025.</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">24</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="text-indent:-9.971%;padding-left:9.067%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_3___quantitative_qualitative_disclo"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Item 3. Quantitative and Qualit</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">ative Disclosures About Market Risk</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">There have been no material changes in the disclosures discussed in the section entitled &#8220;Quantitative and Qualitative Disclosures About Market Risk&#8221; in Part II, Item 7A of our Annual Report.</span></p><p style="text-indent:-9.971%;padding-left:9.067%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_4___controls_procedures"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Item 4. Contr</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">ols and Procedures</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Disclosure Controls and Procedures and Internal Controls Over Financial Reporting</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Our management, with the participation of our Chief Executive Officer and our Chief Financial Officer, have evaluated the effectiveness of the Company&#8217;s disclosure controls and procedures (as defined in Rules 13a-15(e) and 15d-15(e) of the Exchange Act of 1934, as amended) and have concluded that as of March 31, 2025, our disclosure controls and procedures were effective. There have been no significant changes in our internal controls over financial reporting during the quarterly period covered by this report that materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">25</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="part_ii_or_information"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">PART II. OTHER</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> INFORMATION</span></p><p style="text-indent:-9.971%;padding-left:9.067%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_1___legal_proceedings_"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Item 1. Leg</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">al Proceedings</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We are involved in various legal matters and proceedings arising in the ordinary course of business. While these matters and proceedings cause us to incur costs, including, but not limited to, attorneys&#8217; fees, we currently believe that any ultimate liability arising out of these matters and proceedings will not have a material adverse effect on our financial position, results of operations, or cash flows.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:-9.971%;padding-left:9.067%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_1a_risk_factors_"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Item 1A. Ri</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">sk Factors</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">There have been no material changes in the risk factors discussed in the section entitled &#8220;Risk Factors&#8221; disclosed in Part I, Item 1A of our Annual Report.</span></p><p style="text-indent:-9.971%;padding-left:9.067%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_2___unregistered_sales_equity_secur"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Item 2. Unregistered Sales of Eq</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">uity Securities, Use of Proceeds, and Issuer Purchases of Equity Securities</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Share Repurchase Program.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> One of the objectives of our share repurchase program has been to offset dilution resulting from our employee incentive plan. The timing and extent to which we repurchase our shares will depend upon market conditions and other corporate considerations, as may be considered in our sole discretion. Repurchases are funded from our existing cash balances and/or borrowings, and repurchased shares are held as treasury stock.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">During the three months ended March 31, 2025, we repurchased 313,048 shares under our share repurchase program at an aggregate purchase price of $35.1 million. As of March 31, 2025, $114.2 million of repurchase authority remained available for share repurchases.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Repurchases of Equity Securities. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table summarizes the share repurchase activity for the three months ended March 31, 2025 for our share repurchase program and shares purchased in satisfaction of employee tax withholding obligations related to the settlement of restricted stock units.</span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:27.774%;box-sizing:content-box;"/>
     <td style="width:1.1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:14.957%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1.58%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:14.477%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1.1%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:14.957%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:1.58%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:14.477%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Period</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total Number<br/>of Shares<br/>Purchased</span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-weight:bold;font-size:6.03pt;position:relative;font-kerning:none;min-width:fit-content;">&#160;(1)</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Average Price<br/>Paid per<br/>Share</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total Number of<br/>Shares Purchased as<br/>Part of Publicly<br/>Announced Plans or<br/>Programs</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Approximate<br/>Dollar Value of<br/>Shares that May<br/>Yet Be Purchased<br/>Under the Plans<br/>or Programs </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-weight:bold;font-size:6.03pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
     <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">January 1 - January 31</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">134,895</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129.53</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">121,572</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">133,593,757</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">February 1 - February 28</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">191,858</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">101.15</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">191,476</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">114,234,561</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 1 - March 31</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">29,105</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">84.83</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">114,234,561</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
     <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">355,858</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">110.57</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">313,048</span></p></td>
     <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
   </table><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The total number of shares purchased includes shares purchased from employees to pay required withholding taxes related to the settlement of restricted stock units in accordance with our applicable long-term incentive plan. During the three months ended March 31, 2025, we repurchased 42,810 shares of common stock from employees in satisfaction of tax withholding obligations at an average price of $100.34 per share. </span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The current share repurchase program authorizes share repurchases in the aggregate up to $300.0 million. Our Credit Facility permits annual share repurchases of at least $25.0 million; provided, that the Company is not in default of its covenants, and higher amounts provided that our Consolidated Leverage Ratio prior to and after giving effect to such repurchases is 0.50 to 1.00 less than the then-applicable maximum Consolidated Leverage Ratio and subject to a net liquidity of $100.00 million.</span></div></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:-9.971%;padding-left:9.067%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_3___defaults_upon_senior_securities"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Item 3. Defaults U</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">pon Senior Securities</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">None.</span></p><p style="text-indent:-9.971%;padding-left:9.067%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_4___mine_safety_disclosures_"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Item 4. Mine S</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">afety Disclosures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Not applicable.</span></p><p style="text-indent:-9.971%;padding-left:9.067%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_5___or_information_"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Item 5. Oth</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">er Information</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_5593685d-b29b-4b2d-beb9-ac2023861b49" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="ecd:Rule10b51ArrAdoptedFlag" format="ixt:fixed-false"><ix:nonNumeric id="F_7f833186-184c-4603-bc97-a1107771f3a2" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="ecd:NonRule10b51ArrAdoptedFlag" format="ixt:fixed-false"><ix:nonNumeric id="F_26da4c72-f41b-4161-a566-b8d4f5a47e0d" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="ecd:Rule10b51ArrTrmntdFlag" format="ixt:fixed-false"><ix:nonNumeric id="F_e471eee4-1fc9-4c2f-8cec-e02293340b47" contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9" name="ecd:NonRule10b51ArrTrmntdFlag" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">None</span></ix:nonNumeric></ix:nonNumeric></ix:nonNumeric></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">26</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_6_exhibits_"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Item 6.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Exhibits</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:10%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:89%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Exhibit</span></p><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Number</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Exhibit</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">31.1</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="icfi-ex31_1.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Certificate of the Principal Executive Officer Pursuant to Exchange Act Rule 13a-14(a) and 15d-14(a). *</span></a></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">31.2</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="icfi-ex31_2.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Certificate of the Principal Financial Officer Pursuant to Exchange Act Rule 13a-14(a) and 15d-14(a). *</span></a></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">32.1</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="icfi-ex32_1.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Certification of the Chief Executive Officer pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002. *</span></a></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">32.2</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="icfi-ex32_2.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Certification of the Chief Financial Officer pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002. *</span></a></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">101</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">The following materials from the ICF International, Inc. Quarterly Report on Form 10-Q for the quarter ended March 31, 2025 formatted in Inline eXtensible Business Reporting Language (iXBRL): (i) Consolidated Balance Sheets, (ii) Consolidated Statements of Comprehensive Income, (iii) Consolidated Statements of Cash Flows and (iv) Notes to Consolidated Financial Statements.*</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:5.75pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">104</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cover Page Interactive Data File (formatted as inline XBRL and contained in Exhibit 101).</span></p></td>
    </tr>
   </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:86.667%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">* Submitted electronically herewith.</span></p><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">27</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
  <div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">SIGNATURES</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">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.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:55%;box-sizing:content-box;"/>
     <td style="width:4%;box-sizing:content-box;"/>
     <td style="width:1%;box-sizing:content-box;"/>
     <td style="width:40%;box-sizing:content-box;"/>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td colspan="3" style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">ICF INTERNATIONAL, INC.</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">May 2, 2025</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">By:</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">/s/ John Wasson</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">John Wasson</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">President and Chief Executive Officer</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(Principal Executive Officer)</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">May 2, 2025</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">By:</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">/s/ Barry Broadus</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Barry Broadus</span></p></td>
    </tr>
    <tr style="height:0.7pt;white-space:pre-wrap;word-break:break-word;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Executive Vice President &amp; Chief Financial Officer</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(Principal Financial Officer)</span></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">28</span></p></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;"/>
 </body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>icfi-ex31_1.htm
<DESCRIPTION>EX-31.1
<TEXT>
<html>
 <head>
  <title>EX-31.1</title>
 </head>
 <body style="padding:8px;margin:auto!important;z-index:0;position:relative;">
  <div style="z-index:2;min-height:0.25in;position:relative;"></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Exhibit 31.1</font></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Certification of the Principal Executive Officer</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Pursuant to Rule 13a-14(a) and 15d-14(a)</font></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">I, John Wasson, President and Chief Executive Officer of the registrant, certify that:</font></p><p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">1.	I have reviewed this quarterly report on Form 10-Q of ICF International, Inc. (the &#x201c;Registrant&#x201d;);</font></p><p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2.	Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</font></p><p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">3.	Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the Registrant as of, and for, the periods presented in this report;</font></p><p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">4.	The Registrant&#x2019;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:</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(a)	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;</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(b)	designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(c)	evaluated the effectiveness of the Registrant&#x2019;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(d)	disclosed in this report any change in the Registrant&#x2019;s internal control over financial reporting that occurred during the Registrant&#x2019;s most recent fiscal quarter (the Registrant&#x2019;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the Registrant&#x2019;s internal control over financial reporting; and</font></p><p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">5.	The Registrant&#x2019;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the Registrant&#x2019;s auditors and the audit committee of the Registrant&#x2019;s board of directors (or person performing the equivalent functions):</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(a)	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&#x2019;s ability to record, process, summarize and report financial information; and</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(b)	any fraud, whether or not material, that involves management or other employees who have a significant role in the Registrant&#x2019;s internal control over financial reporting.</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:59%;box-sizing:content-box;"></td>
     <td style="width:1%;box-sizing:content-box;"></td>
     <td style="width:40%;box-sizing:content-box;"></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">May 2, 2025</font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">/s/ John Wasson</font><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">John Wasson</font></p></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">President and Chief Executive Officer</font></p></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(Principal Executive Officer)</font></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;min-height:0.25in;justify-content:flex-end;position:relative;"></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>icfi-ex31_2.htm
<DESCRIPTION>EX-31.2
<TEXT>
<html>
 <head>
  <title>EX-31.2</title>
 </head>
 <body style="padding:8px;margin:auto!important;z-index:0;position:relative;">
  <div style="z-index:2;min-height:0.25in;position:relative;"></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Exhibit 31.2</font></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Certification of the Principal Financial Officer</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Pursuant to Rule 13a-14(a) and 15d-14(a)</font></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">I, Barry Broadus, Executive Vice President and Chief Financial Officer of the registrant, certify that:</font></p><p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">1.	I have reviewed this quarterly report on Form 10-Q of ICF International, Inc. (the &#x201c;Registrant&#x201d;);</font></p><p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2.	Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</font></p><p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">3.	Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the Registrant as of, and for, the periods presented in this report;</font></p><p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">4.	The Registrant&#x2019;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:</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(a)	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;</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(b)	designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(c)	evaluated the effectiveness of the Registrant&#x2019;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(d)	disclosed in this report any change in the Registrant&#x2019;s internal control over financial reporting that occurred during the Registrant&#x2019;s most recent fiscal quarter (the Registrant&#x2019;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the Registrant&#x2019;s internal control over financial reporting; and</font></p><p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">5.	The Registrant&#x2019;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the Registrant&#x2019;s auditors and the audit committee of the Registrant&#x2019;s board of directors (or person performing the equivalent functions):</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(a)	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&#x2019;s ability to record, process, summarize and report financial information; and</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(b)	any fraud, whether or not material, that involves management or other employees who have a significant role in the Registrant&#x2019;s internal control over financial reporting.</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:59%;box-sizing:content-box;"></td>
     <td style="width:1%;box-sizing:content-box;"></td>
     <td style="width:40%;box-sizing:content-box;"></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">May 2, 2025</font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">/s/ Barry Broadus</font></p></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Barry Broadus</font></p></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Executive Vice President &amp; Chief Financial Officer</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(Principal Financial Officer)</font></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;min-height:0.25in;justify-content:flex-end;position:relative;"></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>icfi-ex32_1.htm
<DESCRIPTION>EX-32.1
<TEXT>
<html>
 <head>
  <title>EX-32.1</title>
 </head>
 <body style="padding:8px;margin:auto!important;z-index:0;position:relative;">
  <div style="z-index:2;min-height:0.25in;position:relative;"></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="margin-left:10.8%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Exhibit 32.1</font></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Certification of Principal Executive Officer</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Pursuant to</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Section 906 of the Sarbanes-Oxley Act of 2002 (18 U.S.C. 1350)</font></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In connection with the Quarterly Report on Form 10-Q for the quarter ended March 31, 2025 (the &#x201c;Report&#x201d;) of ICF International, Inc. (the &#x201c;Registrant&#x201d;), as filed with the Securities and Exchange Commission on the date hereof, I, John Wasson, President and Chief Executive Officer of the Registrant, hereby certify that:</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(1)	The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934, as amended; and</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(2)	The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Registrant.</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:59%;box-sizing:content-box;"></td>
     <td style="width:1%;box-sizing:content-box;"></td>
     <td style="width:40%;box-sizing:content-box;"></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">May 2, 2025</font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">/s/ John Wasson</font></p></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">John Wasson</font></p></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">President and Chief Executive Officer</font></p></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(Principal Executive Officer)</font></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;min-height:0.25in;justify-content:flex-end;position:relative;"></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>5
<FILENAME>icfi-ex32_2.htm
<DESCRIPTION>EX-32.2
<TEXT>
<html>
 <head>
  <title>EX-32.2</title>
 </head>
 <body style="padding:8px;margin:auto!important;z-index:0;position:relative;">
  <div style="z-index:2;min-height:0.25in;position:relative;"></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Exhibit 32.2</font></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Certification of Principal Financial Officer</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Pursuant to</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Section 906 of the Sarbanes-Oxley Act of 2002 (18 U.S.C. 1350)</font></p><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In connection with the Quarterly Report on Form 10-Q for the quarter ended March 31, 2025 (the &#x201c;Report&#x201d;) of ICF International, Inc. (the &#x201c;Registrant&#x201d;), as filed with the Securities and Exchange Commission on the date hereof, I, Barry Broadus, Executive Vice President and Chief Financial Officer of the Registrant, hereby certify that:</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(1)	The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934, as amended; and</font></p><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(2)	The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Registrant.</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p>
   <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
    <tr style="visibility:collapse;">
     <td style="width:59%;box-sizing:content-box;"></td>
     <td style="width:1%;box-sizing:content-box;"></td>
     <td style="width:40%;box-sizing:content-box;"></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">May 2, 2025</font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">/s/ Barry Broadus</font></p></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Barry Broadus</font></p></td>
    </tr>
    <tr style="height:0.7pt;word-break:break-word;white-space:pre-wrap;">
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
     <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Executive Vice President &amp; Chief Financial Officer</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(Principal Financial Officer)</font></p></td>
    </tr>
   </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p></div>
  <div style="z-index:2;flex-direction:column;display:flex;min-height:0.25in;justify-content:flex-end;position:relative;"></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>6
<FILENAME>icfi-20250331.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA WITH EMBEDDED LINKBASES DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- DFIN New ActiveDisclosure (SM) XBRL Schema Document - http://www.dfinsolutions.com/ -->
<!-- Creation Date :2025-05-02T06:00:39.4553+00:00 -->
<!-- Copyright (c) 2025 Donnelley Financial Solutions, Inc. All Rights Reserved. -->
<xsd:schema targetNamespace="http://www.icf.com/20250331" attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2024-01-31" xmlns:ecd-sub="http://xbrl.sec.gov/ecd-sub/2024" xmlns:ecd="http://xbrl.sec.gov/ecd/2024" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:icfi="http://www.icf.com/20250331" xmlns:enum2="http://xbrl.org/2020/extensible-enumerations-2.0" xmlns:srt="http://fasb.org/srt/2024" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:xlink="http://www.w3.org/1999/xlink">
  <xsd:import schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" namespace="http://www.xbrl.org/2003/instance"/>
  <xsd:import schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" namespace="http://www.xbrl.org/2003/linkbase"/>
  <xsd:import schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" namespace="http://xbrl.org/2005/xbrldt"/>
  <xsd:import schemaLocation="https://xbrl.sec.gov/ecd/2024/ecd-sub-2024.xsd" namespace="http://xbrl.sec.gov/ecd-sub/2024"/>
  <xsd:import schemaLocation="https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd" namespace="http://xbrl.org/2020/extensible-enumerations-2.0"/>
  <xsd:import schemaLocation="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd" namespace="http://fasb.org/srt/2024"/>
  <xsd:import schemaLocation="https://xbrl.sec.gov/dei/2024/dei-2024.xsd" namespace="http://xbrl.sec.gov/dei/2024"/>
  <xsd:import schemaLocation="https://www.xbrl.org/dtr/type/2024-01-31/types.xsd" namespace="http://www.xbrl.org/dtr/type/2024-01-31"/>
  <xsd:import schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd" namespace="http://fasb.org/us-gaap/2024"/>
  <xsd:import schemaLocation="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd" namespace="http://xbrl.sec.gov/ecd/2024"/>
  <xsd:import schemaLocation="https://www.xbrl.org/2023/calculation-1.1.xsd" namespace="https://xbrl.org/2023/calculation-1.1"/>
  <xsd:annotation>
    <xsd:appinfo>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation" id="Role_DocumentDocumentAndEntityInformation">
        <link:definition>100000 - Document - Document And Entity Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED" id="Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED">
        <link:definition>100010 - Statement - CONSOLIDATED BALANCE SHEETS (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://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" id="Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical">
        <link:definition>100020 - Statement - CONSOLIDATED BALANCE SHEETS (UNAUDITED) (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://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails3" id="DisclosureDebtScheduleOfDebtDetails3">
        <link:definition>100030 - Disclosure - Debt - Schedule of Debt (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://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails3" id="DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails3">
        <link:definition>100040 - Disclosure - Leases - Summary of Future Minimum Lease Payments Under Non-Cancellable Operating and Finance Leases (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://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED" id="Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED">
        <link:definition>100050 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (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://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited" id="StatementConsolidatedStatementsOfStockholdersEquityUnaudited">
        <link:definition>100060 - 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://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" id="Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED">
        <link:definition>100070 - Statement - 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://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentation1" id="DisclosureBasisOfPresentation1">
        <link:definition>995455 - Disclosure - Basis of Presentation</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://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCash" id="Role_DisclosureRestrictedCash">
        <link:definition>995465 - Disclosure - Restricted Cash</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://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNet" id="Role_DisclosureContractReceivablesNet">
        <link:definition>995475 - Disclosure - Contract Receivables, Net</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwill" id="Role_DisclosureGoodwill">
        <link:definition>995485 - Disclosure - 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://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeases" id="Role_DisclosureLeases">
        <link:definition>995495 - 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://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilities" id="Role_DisclosureAccruedExpensesAndOtherCurrentLiabilities">
        <link:definition>995505 - Disclosure - Accrued Expenses and Other Current Liabilities</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDebt3" id="DisclosureDebt3">
        <link:definition>995515 - Disclosure - Debt</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://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognition" id="Role_DisclosureRevenueRecognition">
        <link:definition>995525 - Disclosure - Revenue Recognition</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://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivities1" id="DisclosureDerivativeInstrumentsAndHedgingActivities1">
        <link:definition>995535 - Disclosure - Derivative Instruments and Hedging Activities</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://www.icf.com/20250331/taxonomy/role/Role_DisclosureIncomeTaxes" id="Role_DisclosureIncomeTaxes">
        <link:definition>995545 - 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://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccumulatedOtherComprehensiveLoss" id="Role_DisclosureAccumulatedOtherComprehensiveLoss">
        <link:definition>995555 - Disclosure - Accumulated Other Comprehensive Loss</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://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquity" id="Role_DisclosureStockholdersEquity">
        <link:definition>995565 - Disclosure - Stockholders' Equity</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensation" id="DisclosureStockbasedCompensation">
        <link:definition>995575 - Disclosure - Stock-based Compensation</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestiture" id="DisclosureAcquisitionAndDivestiture">
        <link:definition>995585 - Disclosure - Acquisition and Divestiture</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://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShare" id="Role_DisclosureEarningsPerShare">
        <link:definition>995595 - Disclosure - Earnings Per Share</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureShareRepurchaseProgram" id="Role_DisclosureShareRepurchaseProgram">
        <link:definition>995605 - Disclosure - Share Repurchase Program</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://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValue" id="Role_DisclosureFairValue">
        <link:definition>995615 - Disclosure - Fair Value</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://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingencies" id="Role_DisclosureCommitmentsAndContingencies">
        <link:definition>995625 - 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://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformation" id="DisclosureSegmentInformation">
        <link:definition>995635 - Disclosure - Segment Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEvents" id="Role_DisclosureSubsequentEvents">
        <link:definition>995645 - Disclosure - Subsequent Events</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignment" id="DisclosureOrganizationalRealignment">
        <link:definition>995655 - Disclosure - Organizational Realignment</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://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationPolicies" id="DisclosureBasisOfPresentationPolicies">
        <link:definition>995665 - Disclosure - Basis of Presentation (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://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashTables" id="Role_DisclosureRestrictedCashTables">
        <link:definition>995675 - Disclosure - Restricted Cash (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://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetTables" id="Role_DisclosureContractReceivablesNetTables">
        <link:definition>995685 - Disclosure - Contract Receivables, Net (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillTables" id="Role_DisclosureGoodwillTables">
        <link:definition>995695 - Disclosure - 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://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesTables" id="Role_DisclosureLeasesTables">
        <link:definition>995705 - 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://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables" id="Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables">
        <link:definition>995715 - Disclosure - Accrued Expenses and Other Current Liabilities (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtTables" id="DisclosureDebtTables">
        <link:definition>995725 - Disclosure - Debt (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://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionTables" id="Role_DisclosureRevenueRecognitionTables">
        <link:definition>995735 - Disclosure - Revenue Recognition (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://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesTables" id="DisclosureIncomeTaxesTables">
        <link:definition>995745 - Disclosure - Income Taxes (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://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquityTables" id="Role_DisclosureStockholdersEquityTables">
        <link:definition>995755 - Disclosure - Stockholders' Equity (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationTables" id="DisclosureStockbasedCompensationTables">
        <link:definition>995765 - Disclosure - Stock-based Compensation (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureTables" id="DisclosureAcquisitionAndDivestitureTables">
        <link:definition>995775 - Disclosure - Acquisition and Divestiture (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://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareTables" id="Role_DisclosureEarningsPerShareTables">
        <link:definition>995785 - Disclosure - Earnings Per Share (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueTables" id="Role_DisclosureFairValueTables">
        <link:definition>995795 - Disclosure - Fair Value (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://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationTables" id="DisclosureSegmentInformationTables">
        <link:definition>995805 - Disclosure - Segment Information (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails" id="DisclosureBasisOfPresentationAdditionalInformationDetails">
        <link:definition>995815 - Disclosure - Basis of Presentation - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails" id="Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails">
        <link:definition>995825 - Disclosure - Restricted Cash - Reconciliation of Cash and Cash Equivalents, and Restricted Cash to the Total of Cash, Cash Equivalents, and Restricted Cash (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://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails" id="Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails">
        <link:definition>995835 - Disclosure - Contract Receivables, Net - Summary of Contract Receivables, Net (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://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails2" id="DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails2">
        <link:definition>995845 - Disclosure - Leases - Summary of Future Minimum Lease Payments Under Non-Cancellable Operating and Finance 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://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom2" id="DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom2">
        <link:definition>995855 - Disclosure - Contract Receivables, Net -Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (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://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom3" id="DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom3">
        <link:definition>995865 - Disclosure - Contract Receivables, Net - Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (Parenthetical) (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://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud1" id="DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud1">
        <link:definition>995875 - Disclosure - Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (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://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2" id="DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2">
        <link:definition>995885 - Disclosure - Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (Parenthetical) (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://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails" id="DisclosureContractReceivablesNetAdditionalInformationDetails">
        <link:definition>995895 - Disclosure - Contract Receivables, Net - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails" id="Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails">
        <link:definition>995905 - Disclosure - Goodwill - Schedule of Changes in Carrying Amount of 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://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails" id="Role_DisclosureLeasesAdditionalInformationDetails">
        <link:definition>995915 - Disclosure - Leases - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails" id="DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails">
        <link:definition>995925 - Disclosure - Leases - Summary of Future Minimum Lease Payments Under Non-Cancellable Operating and Finance 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://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails" id="Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails">
        <link:definition>995935 - Disclosure - Accrued Expenses and Other Current Liabilities - Schedule of Accrued Expenses and Other Current Liabilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails" id="DisclosureDebtScheduleOfDebtDetails">
        <link:definition>995945 - Disclosure - Debt - Schedule of Debt (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://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails" id="DisclosureDebtAdditionalInformationDetails">
        <link:definition>995955 - Disclosure - Debt - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails" id="DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails">
        <link:definition>995965 - Disclosure - Debt - Schedule of Future Scheduled Repayments of Debt Principal (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://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail" id="Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail">
        <link:definition>995975 - Disclosure - Revenue Recognition - Disaggregation of Revenue (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail" id="DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail">
        <link:definition>995985 - Disclosure - Revenue Recognition - Schedule of Contract Assets and Liabilities (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail" id="Role_DisclosureRevenueRecognitionAdditionalInformationDetail">
        <link:definition>995995 - Disclosure - Revenue Recognition - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1" id="Role_DisclosureRevenueRecognitionAdditionalInformationDetail1">
        <link:definition>996005 - Disclosure - Revenue Recognition - Additional Information (Detail 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://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1Default" id="Role_DisclosureRevenueRecognitionAdditionalInformationDetail1Default">
        <link:definition>996005 - Disclosure - Revenue Recognition - Additional Information (Detail 1) [Default]</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://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails" id="DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails">
        <link:definition>996015 - Disclosure - Derivative Instruments and Hedging Activities - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails" id="DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails">
        <link:definition>996025 - Disclosure - Income Taxes - Effective Income Tax Rate Reconciliation (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://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesAdditionalInformationDetails" id="DisclosureIncomeTaxesAdditionalInformationDetails">
        <link:definition>996035 - Disclosure - Income Taxes - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails" id="DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails">
        <link:definition>996045 - Disclosure - Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (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://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails" id="DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails">
        <link:definition>996055 - Disclosure - Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (Parenthetical) (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://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails" id="DisclosureStockholdersEquityAdditionalInformationDetails">
        <link:definition>996065 - Disclosure - Stockholders' Equity - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails" id="DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails">
        <link:definition>996075 - Disclosure - Stockholders' Equity - Summary of Repurchase of Shares (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://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails" id="DisclosureStockbasedCompensationAdditionalInformationDetails">
        <link:definition>996085 - Disclosure - Stock-based Compensation - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails" id="DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails">
        <link:definition>996095 - Disclosure - Stock-based Compensation - Schedule Of Awards Granted (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://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails" id="DisclosureAcquisitionAndDivestitureAdditionalInformationDetails">
        <link:definition>996105 - Disclosure - Acquisition and Divestiture - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails" id="DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails">
        <link:definition>996115 - Disclosure - Acquisition and Divestiture - Summary of Preliminary Purchase Price Allocation (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://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails" id="DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails">
        <link:definition>996125 - Disclosure - Acquisition and Divestiture - Summary of Estimated Useful Lives of Acquired Intangible Assets (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://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails" id="DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails">
        <link:definition>996135 - Disclosure - Earnings Per Share - Schedule of Earnings Per Share Including Dilutive Effect of Stock Awards (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://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails" id="Role_DisclosureEarningsPerShareAdditionalInformationDetails">
        <link:definition>996145 - Disclosure - Earnings Per Share - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails" id="Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails">
        <link:definition>996155 - Disclosure - Fair Value - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (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://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" id="Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails">
        <link:definition>996165 - Disclosure - Commitments and Contingencies - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails" id="DisclosureSegmentInformationAdditionalInformationDetails">
        <link:definition>996175 - Disclosure - Segment Information - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails" id="DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails">
        <link:definition>996185 - Disclosure - Segment Information - Schedule of Segment Revenue, Significant Segment Expenses, and Segment Profit (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://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails" id="Role_DisclosureSubsequentEventsAdditionalInformationDetails">
        <link:definition>996195 - Disclosure - Subsequent Events - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails" id="DisclosureOrganizationalRealignmentAdditionalInformationDetails">
        <link:definition>996205 - Disclosure - Organizational Realignment (Additional Information) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:linkbase id="lnk">
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://www.esma.europa.eu/xbrl/esef/arcrole/wider-narrower" xlink:href="http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd#wider-narrower" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="https://xbrl.org/2023/arcrole/summation-item" xlink:href="https://www.xbrl.org/2023/calculation-1.1.xsd#summation-item" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation" xlink:href="icfi-20250331.xsd#Role_DocumentDocumentAndEntityInformation" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED" xlink:href="icfi-20250331.xsd#Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" xlink:href="icfi-20250331.xsd#Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED" xlink:href="icfi-20250331.xsd#Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:href="icfi-20250331.xsd#StatementConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" xlink:href="icfi-20250331.xsd#Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentation1" xlink:href="icfi-20250331.xsd#DisclosureBasisOfPresentation1" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCash" xlink:href="icfi-20250331.xsd#Role_DisclosureRestrictedCash" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNet" xlink:href="icfi-20250331.xsd#Role_DisclosureContractReceivablesNet" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwill" xlink:href="icfi-20250331.xsd#Role_DisclosureGoodwill" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeases" xlink:href="icfi-20250331.xsd#Role_DisclosureLeases" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilities" xlink:href="icfi-20250331.xsd#Role_DisclosureAccruedExpensesAndOtherCurrentLiabilities" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDebt3" xlink:href="icfi-20250331.xsd#DisclosureDebt3" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognition" xlink:href="icfi-20250331.xsd#Role_DisclosureRevenueRecognition" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivities1" xlink:href="icfi-20250331.xsd#DisclosureDerivativeInstrumentsAndHedgingActivities1" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureIncomeTaxes" xlink:href="icfi-20250331.xsd#Role_DisclosureIncomeTaxes" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccumulatedOtherComprehensiveLoss" xlink:href="icfi-20250331.xsd#Role_DisclosureAccumulatedOtherComprehensiveLoss" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquity" xlink:href="icfi-20250331.xsd#Role_DisclosureStockholdersEquity" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensation" xlink:href="icfi-20250331.xsd#DisclosureStockbasedCompensation" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestiture" xlink:href="icfi-20250331.xsd#DisclosureAcquisitionAndDivestiture" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShare" xlink:href="icfi-20250331.xsd#Role_DisclosureEarningsPerShare" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureShareRepurchaseProgram" xlink:href="icfi-20250331.xsd#Role_DisclosureShareRepurchaseProgram" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValue" xlink:href="icfi-20250331.xsd#Role_DisclosureFairValue" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingencies" xlink:href="icfi-20250331.xsd#Role_DisclosureCommitmentsAndContingencies" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformation" xlink:href="icfi-20250331.xsd#DisclosureSegmentInformation" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEvents" xlink:href="icfi-20250331.xsd#Role_DisclosureSubsequentEvents" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignment" xlink:href="icfi-20250331.xsd#DisclosureOrganizationalRealignment" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationPolicies" xlink:href="icfi-20250331.xsd#DisclosureBasisOfPresentationPolicies" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashTables" xlink:href="icfi-20250331.xsd#Role_DisclosureRestrictedCashTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetTables" xlink:href="icfi-20250331.xsd#Role_DisclosureContractReceivablesNetTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillTables" xlink:href="icfi-20250331.xsd#Role_DisclosureGoodwillTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesTables" xlink:href="icfi-20250331.xsd#Role_DisclosureLeasesTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables" xlink:href="icfi-20250331.xsd#Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtTables" xlink:href="icfi-20250331.xsd#DisclosureDebtTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionTables" xlink:href="icfi-20250331.xsd#Role_DisclosureRevenueRecognitionTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesTables" xlink:href="icfi-20250331.xsd#DisclosureIncomeTaxesTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquityTables" xlink:href="icfi-20250331.xsd#Role_DisclosureStockholdersEquityTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationTables" xlink:href="icfi-20250331.xsd#DisclosureStockbasedCompensationTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureTables" xlink:href="icfi-20250331.xsd#DisclosureAcquisitionAndDivestitureTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareTables" xlink:href="icfi-20250331.xsd#Role_DisclosureEarningsPerShareTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueTables" xlink:href="icfi-20250331.xsd#Role_DisclosureFairValueTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationTables" xlink:href="icfi-20250331.xsd#DisclosureSegmentInformationTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#DisclosureBasisOfPresentationAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails" xlink:href="icfi-20250331.xsd#Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails" xlink:href="icfi-20250331.xsd#Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom2" xlink:href="icfi-20250331.xsd#DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom2" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom3" xlink:href="icfi-20250331.xsd#DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom3" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud1" xlink:href="icfi-20250331.xsd#DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud1" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2" xlink:href="icfi-20250331.xsd#DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#DisclosureContractReceivablesNetAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails" xlink:href="icfi-20250331.xsd#Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#Role_DisclosureLeasesAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails" xlink:href="icfi-20250331.xsd#DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails" xlink:href="icfi-20250331.xsd#Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails" xlink:href="icfi-20250331.xsd#DisclosureDebtScheduleOfDebtDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#DisclosureDebtAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails" xlink:href="icfi-20250331.xsd#DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail" xlink:href="icfi-20250331.xsd#Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail" xlink:href="icfi-20250331.xsd#DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail" xlink:href="icfi-20250331.xsd#Role_DisclosureRevenueRecognitionAdditionalInformationDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1" xlink:href="icfi-20250331.xsd#Role_DisclosureRevenueRecognitionAdditionalInformationDetail1" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails" xlink:href="icfi-20250331.xsd#DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#DisclosureIncomeTaxesAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails" xlink:href="icfi-20250331.xsd#DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails" xlink:href="icfi-20250331.xsd#DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#DisclosureStockholdersEquityAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails" xlink:href="icfi-20250331.xsd#DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#DisclosureStockbasedCompensationAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails" xlink:href="icfi-20250331.xsd#DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#DisclosureAcquisitionAndDivestitureAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails" xlink:href="icfi-20250331.xsd#DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails" xlink:href="icfi-20250331.xsd#DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails" xlink:href="icfi-20250331.xsd#DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#Role_DisclosureEarningsPerShareAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails" xlink:href="icfi-20250331.xsd#Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#DisclosureSegmentInformationAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails" xlink:href="icfi-20250331.xsd#DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#Role_DisclosureSubsequentEventsAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails" xlink:href="icfi-20250331.xsd#DisclosureOrganizationalRealignmentAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails3" xlink:href="icfi-20250331.xsd#DisclosureDebtScheduleOfDebtDetails3" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails3" xlink:href="icfi-20250331.xsd#DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails3" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails2" xlink:href="icfi-20250331.xsd#DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails2" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1Default" xlink:href="icfi-20250331.xsd#Role_DisclosureRevenueRecognitionAdditionalInformationDetail1Default" xlink:type="simple"/>
        <link:roleRef roleURI="http://fasb.org/srt/role/srt-eedm/ExtensibleEnumerationLists" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd#eedm1" xlink:type="simple"/>
        <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:title="labelLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:label="us-gaap_LiabilitiesFairValueDisclosureAbstract"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SaleOfReceivablesLiabilities" xlink:label="icfi_SaleOfReceivablesLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IntangibleAssetsNetExcludingGoodwillMember" xlink:label="icfi_IntangibleAssetsNetExcludingGoodwillMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRepurchaseOfEquity" xlink:label="us-gaap_PaymentsForRepurchaseOfEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock" xlink:label="icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity" xlink:label="us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember" xlink:label="icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations" xlink:label="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" xlink:label="us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SignificantSegmentExpensesAbstract" xlink:label="icfi_SignificantSegmentExpensesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ESACAcquisitionMember" xlink:label="icfi_ESACAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:label="us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers" xlink:label="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedTaxesAndInsurancePremiumsCurrent" xlink:label="icfi_AccruedTaxesAndInsurancePremiumsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromBankDebt" xlink:label="us-gaap_ProceedsFromBankDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DelayedDrawTermLoanMember" xlink:label="us-gaap_DelayedDrawTermLoanMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockTextBlock" xlink:label="us-gaap_TreasuryStockTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="us-gaap_ScheduleOfGoodwillTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireProductiveAssets" xlink:label="us-gaap_PaymentsToAcquireProductiveAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendPayableDateToBePaidDayMonthAndYear" xlink:label="us-gaap_DividendPayableDateToBePaidDayMonthAndYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="us-gaap_ClassOfTreasuryStockTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestExpenseNonoperating" xlink:label="us-gaap_InterestExpenseNonoperating"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription" xlink:label="us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableDateDeclaredDayMonthAndYear" xlink:label="us-gaap_DividendsPayableDateDeclaredDayMonthAndYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinesses"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:label="icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncurrentAssetsMember" xlink:label="us-gaap_OtherNoncurrentAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseRemainingLeaseTerm" xlink:label="us-gaap_LesseeOperatingLeaseRemainingLeaseTerm"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedOtherFutureLeaseRelatedExpenses" xlink:label="icfi_AccruedOtherFutureLeaseRelatedExpenses"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock" xlink:label="us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts" xlink:label="icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts"/>
          <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: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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember" xlink:label="icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent" xlink:label="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesTable" xlink:label="us-gaap_LossContingenciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableDateOfRecordDayMonthAndYear" xlink:label="us-gaap_DividendsPayableDateOfRecordDayMonthAndYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfAccountsReceivableSecuritization" xlink:label="us-gaap_RepaymentsOfAccountsReceivableSecuritization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="us-gaap_TreasuryStockCommonShares"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock" xlink:label="icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventLineItems" xlink:label="us-gaap_SubsequentEventLineItems"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent" xlink:label="icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FixedPriceContractMember" xlink:label="us-gaap_FixedPriceContractMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseOptionToExtend" xlink:label="us-gaap_LesseeFinanceLeaseOptionToExtend"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription" xlink:label="us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseOptionToExtend" xlink:label="us-gaap_LesseeOperatingLeaseOptionToExtend"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TermLoanMember" xlink:label="icfi_TermLoanMember"/>
          <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: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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BasisOfPresentationAndNatureOfOperationsLineItems" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount" xlink:label="us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense"/>
          <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: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: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: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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SaleOfBilledReceivables" xlink:label="icfi_SaleOfBilledReceivables"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="us-gaap_PaymentsOfDividendsCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScenarioPlanMember" xlink:label="us-gaap_ScenarioPlanMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepositLiabilityCurrent" xlink:label="us-gaap_DepositLiabilityCurrent"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="us-gaap_FairValueMeasurementsRecurringMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingAxis" xlink:label="us-gaap_VestingAxis"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditDerivativesContractTypeDomain" xlink:label="us-gaap_CreditDerivativesContractTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:label="us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedComputerSoftwareNet" xlink:label="us-gaap_CapitalizedComputerSoftwareNet"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CMYSolutionsLLCMember" xlink:label="icfi_CMYSolutionsLLCMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestructuringCosts" xlink:label="us-gaap_RestructuringCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember" xlink:label="icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SecurityAndOtherCivilianAndCommercialMember" xlink:label="icfi_SecurityAndOtherCivilianAndCommercialMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" xlink:label="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CostBasedContractMember" xlink:label="icfi_CostBasedContractMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent" xlink:label="icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionTable" xlink:label="us-gaap_LesseeLeaseDescriptionTable"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CreativeSystemsAndConsultingAcquisitionMember" xlink:label="icfi_CreativeSystemsAndConsultingAcquisitionMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" xlink:label="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="us-gaap_TreasuryStockCommonMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome" xlink:label="icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember" xlink:label="icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CompanyOwnedLifeInsurancePoliciesMember" xlink:label="icfi_CompanyOwnedLifeInsurancePoliciesMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SegmentDepreciationAndAmortizationMember" xlink:label="icfi_SegmentDepreciationAndAmortizationMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AugustThirtyFirstTwoThousandTwentyThreeMember" xlink:label="icfi_AugustThirtyFirstTwoThousandTwentyThreeMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashCurrent" xlink:label="us-gaap_RestrictedCashCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFinancingReceivablesPastDueTable" xlink:label="us-gaap_ScheduleOfFinancingReceivablesPastDueTable"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RevenueFromContractWithCustomerLineItems" xlink:label="icfi_RevenueFromContractWithCustomerLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SeveranceCosts1" xlink:label="us-gaap_SeveranceCosts1"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AppliedEnergyGroupIncMember" xlink:label="icfi_AppliedEnergyGroupIncMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_OmnibusPlanMember" xlink:label="icfi_OmnibusPlanMember"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits" xlink:label="icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_FinanceLeasesTerminationLeaseTerm" xlink:label="icfi_FinanceLeasesTerminationLeaseTerm"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities" xlink:label="icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RepaymentsOfRestrictedContractFunds" xlink:label="icfi_RepaymentsOfRestrictedContractFunds"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ImpairmentOfLeasehold" xlink:label="us-gaap_ImpairmentOfLeasehold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnSaleOfBusiness" xlink:label="us-gaap_GainLossOnSaleOfBusiness"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeTable" xlink:label="us-gaap_DerivativeTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillLineItems" xlink:label="us-gaap_GoodwillLineItems"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_USStateAndLocalGovernmentMember" xlink:label="icfi_USStateAndLocalGovernmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="us-gaap_AssetsFairValueDisclosure"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock" xlink:label="icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeLineItems" xlink:label="us-gaap_DerivativeLineItems"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NumberOfOfficeFacilitiesCeasedUse" xlink:label="icfi_NumberOfOfficeFacilitiesCeasedUse"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
          <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: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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted" xlink:label="icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CashSettledRSUsMember" xlink:label="icfi_CashSettledRSUsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="us-gaap_AssetsFairValueDisclosureAbstract"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_InConnectionWithVestingOfRestrictedStockUnitsMember" xlink:label="icfi_InConnectionWithVestingOfRestrictedStockUnitsMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="us-gaap_HedgingRelationshipDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditDerivativesByContractTypeAxis" xlink:label="us-gaap_CreditDerivativesByContractTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleAndCollectionOfReceivables" xlink:label="us-gaap_ProceedsFromSaleAndCollectionOfReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CreditFacilityMember" xlink:label="icfi_CreditFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock" xlink:label="icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NonemployeeDirectOrAwardsMember" xlink:label="icfi_NonemployeeDirectOrAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration" xlink:label="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_USFederalGovernmentMember" xlink:label="icfi_USFederalGovernmentMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromAccountsReceivableSecuritization" xlink:label="us-gaap_ProceedsFromAccountsReceivableSecuritization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet" xlink:label="us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="us-gaap_BusinessAcquisitionProFormaInformationTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition" xlink:label="icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CommercialMember" xlink:label="icfi_CommercialMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock" xlink:label="us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionLineItems" xlink:label="us-gaap_LesseeLeaseDescriptionLineItems"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestructuringCostsAbstract" xlink:label="us-gaap_RestructuringCostsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncurrentLiabilitiesMember" xlink:label="us-gaap_OtherNoncurrentLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="us-gaap_TrademarksAndTradeNamesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="us-gaap_LeaseCostTableTextBlock"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="us-gaap_ScheduleOfGoodwillTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" xlink:label="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" xlink:label="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="us-gaap_DisaggregationOfRevenueAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseOptionToTerminate" xlink:label="us-gaap_LesseeFinanceLeaseOptionToTerminate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:label="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SeveranceChargeExpectedToBePaid" xlink:label="icfi_SeveranceChargeExpectedToBePaid"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfTreasuryStockByClassTextBlock" xlink:label="us-gaap_ScheduleOfTreasuryStockByClassTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RestrictedContractFunds" xlink:label="icfi_RestrictedContractFunds"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TimeAndMaterialsContractMember" xlink:label="us-gaap_TimeAndMaterialsContractMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:label="us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockDividendsPerShareDeclared" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="us-gaap_DesignatedAsHedgingInstrumentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseRenewalTerm1" xlink:label="us-gaap_LesseeFinanceLeaseRenewalTerm1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromPaymentsForOtherFinancingActivities" xlink:label="us-gaap_ProceedsFromPaymentsForOtherFinancingActivities"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteAbstract" xlink:label="us-gaap_StockholdersEquityNoteAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TwoHundredMillionShareRepurchaseProgramMember" xlink:label="icfi_TwoHundredMillionShareRepurchaseProgramMember"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillDisclosureTextBlock" xlink:label="us-gaap_GoodwillDisclosureTextBlock"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription" xlink:label="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsCommonStockCash" xlink:label="us-gaap_DividendsCommonStockCash"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="us-gaap_BusinessCombinationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="us-gaap_IncomeTaxesReceivable"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_InitialPerformanceVestingPeriodMember" xlink:label="icfi_InitialPerformanceVestingPeriodMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromOtherShortTermDebt" xlink:label="us-gaap_ProceedsFromOtherShortTermDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableSale" xlink:label="us-gaap_AccountsReceivableSale"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsDisclosureTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BlantonAndAssociatesMember" xlink:label="icfi_BlantonAndAssociatesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="srt_ShareRepurchaseProgramAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AmortizationOfIntangibleAsset" xlink:label="icfi_AmortizationOfIntangibleAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ProceedsFromSaleOfBilledReceivables" xlink:label="icfi_ProceedsFromSaleOfBilledReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TechnologyBasedIntangibleAssetsMember" xlink:label="us-gaap_TechnologyBasedIntangibleAssetsMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableAmountPerShare" xlink:label="us-gaap_DividendsPayableAmountPerShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RevenueFromContractWithCustomerTable" xlink:label="icfi_RevenueFromContractWithCustomerTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_PaymentsForShareRepurchasesShares" xlink:label="icfi_PaymentsForShareRepurchasesShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashFlowHedgingMember" xlink:label="us-gaap_CashFlowHedgingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditMember" xlink:label="us-gaap_LineOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeMaturityDates" xlink:label="us-gaap_DerivativeMaturityDates"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:label="us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock"/>
          <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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialLiabilitiesFairValueDisclosure" xlink:label="us-gaap_FinancialLiabilitiesFairValueDisclosure"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReconciliationFromSegmentTotalsToConsolidatedAbstract" xlink:label="us-gaap_ReconciliationFromSegmentTotalsToConsolidatedAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NonEmployeeDirectorStockAwardsMember" xlink:label="icfi_NonEmployeeDirectorStockAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeNotionalAmount" xlink:label="us-gaap_DerivativeNotionalAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte" xlink:label="icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DeferredCompensationPlanLiabilitiesMember" xlink:label="icfi_DeferredCompensationPlanLiabilitiesMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInReceivables" xlink:label="us-gaap_IncreaseDecreaseInReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ScheduleOfAcquisitionAndDivestitureTable" xlink:label="icfi_ScheduleOfAcquisitionAndDivestitureTable"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_LettersOfCreditGuarantees" xlink:label="icfi_LettersOfCreditGuarantees"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandbyLettersOfCreditMember" xlink:label="us-gaap_StandbyLettersOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesLineItems" xlink:label="us-gaap_LossContingenciesLineItems"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SemanticBitsLLCMember" xlink:label="icfi_SemanticBitsLLCMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseOptionToTerminate" xlink:label="us-gaap_LesseeOperatingLeaseOptionToTerminate"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RestructuringAndRelatedCostLineItemsLineItems" xlink:label="icfi_RestructuringAndRelatedCostLineItemsLineItems"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="srt_ShareRepurchaseProgramDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPayableCurrent" xlink:label="us-gaap_InterestPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers" xlink:label="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="us-gaap_CashAndCashEquivalentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="us-gaap_FairValueInputsLevel1Member"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NumberOfOpenStandbyLettersOfCredit" xlink:label="icfi_NumberOfOpenStandbyLettersOfCredit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:label="us-gaap_GoodwillPurchaseAccountingAdjustments"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_EmployeeStockAwardsMember" xlink:label="icfi_EmployeeStockAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock"/>
          <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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember" xlink:label="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AcquisitionAndDivestitureLineItems" xlink:label="icfi_AcquisitionAndDivestitureLineItems"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfOtherShortTermDebt" xlink:label="us-gaap_RepaymentsOfOtherShortTermDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTable" xlink:label="us-gaap_SubsequentEventTable"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_JuneTwentySevenTwoThousandTwentyEightMember" xlink:label="icfi_JuneTwentySevenTwoThousandTwentyEightMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_FebruaryTwentyEightTwoThousandTwentyEightMember" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyEightMember"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsAbstract" xlink:label="us-gaap_OtherAssetsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="us-gaap_AccruedProfessionalFeesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ProceedsFromRestrictedContractFunds" xlink:label="icfi_ProceedsFromRestrictedContractFunds"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember" xlink:label="icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractReceivablesDomain" xlink:label="icfi_ContractReceivablesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableCurrent" xlink:label="us-gaap_DividendsPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashAndCashEquivalentsCurrentAbstract" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LettersOfCreditOutstandingAmount" xlink:label="us-gaap_LettersOfCreditOutstandingAmount"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesAndOtherLiabilities" xlink:label="us-gaap_AccruedLiabilitiesAndOtherLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CommercialMarketingMember" xlink:label="icfi_CommercialMarketingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DirectLaborAndRelatedFringeCosts" xlink:label="icfi_DirectLaborAndRelatedFringeCosts"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseImpairmentLoss" xlink:label="us-gaap_OperatingLeaseImpairmentLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingDesignationAxis" xlink:label="us-gaap_HedgingDesignationAxis"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="us-gaap_FederalFundsEffectiveSwapRateMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_USStateAndInternationalGovernmentMember" xlink:label="icfi_USStateAndInternationalGovernmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeFixedInterestRate" xlink:label="us-gaap_DerivativeFixedInterestRate"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramAuthorizedAmount1" xlink:label="srt_StockRepurchaseProgramAuthorizedAmount1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_LesseeOperatingLeaseTerminationTerm" xlink:label="icfi_LesseeOperatingLeaseTerminationTerm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit" xlink:label="us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_VestingOfRestrictedStockUnitsMember" xlink:label="icfi_VestingOfRestrictedStockUnitsMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems" xlink:label="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BasisOfPresentationAndNatureOfOperationsTable" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedSubcontractorAndOtherDirectCosts" xlink:label="icfi_AccruedSubcontractorAndOtherDirectCosts"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerMember" xlink:label="us-gaap_RevenueFromContractWithCustomerMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DelayedDrawTermLoanFacilityMember" xlink:label="icfi_DelayedDrawTermLoanFacilityMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_InternationalGovernmentMember" xlink:label="icfi_InternationalGovernmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaid" xlink:label="us-gaap_IncomeTaxesPaid"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:label="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SecuredOvernightFinancingRateMember" xlink:label="icfi_SecuredOvernightFinancingRateMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" xlink:label="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SubcontractorsAndOtherDirectCosts" xlink:label="icfi_SubcontractorsAndOtherDirectCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_MillionShareRepurchaseProgramMember" xlink:label="icfi_MillionShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BilledContractReceivables" xlink:label="us-gaap_BilledContractReceivables"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractReceivablesAxis" xlink:label="icfi_ContractReceivablesAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CMGAcquisitionMember" xlink:label="icfi_CMGAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ProceedsFromSaleOfBilledContractReceivables" xlink:label="icfi_ProceedsFromSaleOfBilledContractReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:label="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract" xlink:label="us-gaap_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CMYAcquisitionMember" xlink:label="icfi_CMYAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_PaymentsForShareRepurchasesValue" xlink:label="icfi_PaymentsForShareRepurchasesValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_HealthAndSocialProgramsMember" xlink:label="icfi_HealthAndSocialProgramsMember"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember" xlink:label="icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember"/>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Statement [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesFairValueDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities, Fair Value Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesFairValueDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Liabilities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateDuringPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Interest Rate During Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateDuringPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Average Interest Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SaleOfReceivablesLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Sale of billed receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SaleOfReceivablesLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Ending balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SaleOfReceivablesLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Beginning balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SaleOfReceivablesLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Sale of Receivables Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SaleOfReceivablesLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Sale of receivables liabilities.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt Instrument</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IntangibleAssetsNetExcludingGoodwillMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Intangible Assets, Net (Excluding Goodwill) [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IntangibleAssetsNetExcludingGoodwillMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Intangible assets, net (excluding goodwill).</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IntangibleAssetsNetExcludingGoodwillMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other Intangible Assets, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PlanNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Plan Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PlanNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Plan Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForRepurchaseOfEquity_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Net payments for stock issuances and share repurchases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForRepurchaseOfEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments for Repurchase of Equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForRepurchaseOfEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Payments for Repurchase of Equity, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressPostalZipCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, Postal Zip Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressPostalZipCode_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Address, Postal Zip Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Maturities, Repayments of Principal in Rolling Year Five</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">May 6, 2027 (Maturity)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue, Remaining Performance Obligation, Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Unfulfilled performance obligation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group Name [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value, Recurring and Nonrecurring [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fair Value Assets And Liabilities Measured On Recurring And Nonrecurring Basis [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Incorporation, State or Country Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Incorporation State Country Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Lease, Liability, to be Paid</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total future minimum lease payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total future minimum lease payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current period other comprehensive (loss) income:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestPaidNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Paid, Excluding Capitalized Interest, Operating Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestPaidNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule of other information related to operating and finance leases.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Other Information Related to Operating and Finance Leases [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Other Information Related to Operating and Finance Leases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NumberOfOperatingSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number of Operating Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NumberOfOperatingSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of operating segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NumberOfOperatingSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Number of Operating Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Tax credits</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, Tax Credit, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Effective Income Tax Rate Reconciliation, Tax Credit, Percent, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition, Description of Acquired Entity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business acquisition, description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Energy, environment, infrastructure, and disaster recovery.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Energy, Environment, Infrastructure, And Disaster Recovery [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Energy, Environment, Infrastructure, and Disaster Recovery</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase Decrease in Unfulfilled Performance Obligations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Increase decrease in unfulfilled performance obligations.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Reduced amount of unfulfilled performance obligations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNoncashIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Other operating adjustments, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNoncashIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Noncash Income (Expense)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNoncashIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Other Noncash Income (Expense), Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Reclassification from AOCI, Current Period, Net of Tax, Attributable to Parent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Amounts reclassified from accumulated other comprehensive (loss) income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Amounts reclassified from accumulated other comprehensive (loss) income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value Hierarchy and NAV [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Level 1</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">OCI, before Reclassifications, Net of Tax, Attributable to Parent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other comprehensive (loss) income before reclassifications</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Preliminary Purchase Price Allocation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueInputsLevel2Member_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value, Inputs, Level 2 [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueInputsLevel2Member_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Level 2</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share Based Compensation Arrangement By Share Based Payment Award [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SignificantSegmentExpensesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Significant Segment Expenses [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SignificantSegmentExpensesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Significant segment expenses.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SignificantSegmentExpensesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Significant segment expenses:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongtermDebtTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Type [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongtermDebtTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-Term Debt, Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ESACAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">ESAC acquisition.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ESACAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">E S A C Acquisition [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ESACAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">ESAC Acquisition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Consideration Transferred</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Purchase price acquisition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Purchase consideration</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue, remaining performance obligation, percentage</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue, Remaining Performance Obligation, Percentage</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Billed receivables sold but have not yet been collected from customers</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Ending balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Beginning balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract Receivables Sold But Not Yet Collected From Customers</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract receivables sold but not yet collected from customers.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingOtherItemAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting, Other Segment Item, Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingOtherItemAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other segment expense (income)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedTaxesAndInsurancePremiumsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Accrued taxes and insurance premiums current.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedTaxesAndInsurancePremiumsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Taxes And Insurance Premiums Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedTaxesAndInsurancePremiumsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Taxes and insurance premiums</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Current Maturities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current portion of long-term debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Long-Term Debt, Current Maturities, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Leases [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Leases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commitments and Contingencies Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Commitments and Contingencies</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring Cost [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestRateSwapMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Rate Swap [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestRateSwapMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Interest Rate Swap</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Issuance of shares pursuant to vesting of restricted stock units</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Issuance of shares pursuant to employee stock purchase plan and vesting of restricted stock units</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Basis of Pricing [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract with Customer, Basis of Pricing</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromBankDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Bank Debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromBankDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Advances from working capital facilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ProductOrServiceAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Product and Service [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ProductOrServiceAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Product and Service</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DelayedDrawTermLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Delayed-Draw Term Loan</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DelayedDrawTermLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Delayed Draw Term Loan (DDTL) [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finite-Lived Intangible Assets by Major Class</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Lender Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lender Name [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Depreciation, Depletion and Amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Depreciation and amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Depreciation, Depletion and Amortization, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Treasury Stock [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share Repurchase Program</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock Repurchased During Period, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Repurchased During Period, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfGoodwillTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfGoodwillTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule Of Goodwill [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireProductiveAssets_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Payments for purchase of property and equipment and capitalized software</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireProductiveAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments to Acquire Productive Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireProductiveAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Payments to Acquire Productive Assets, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendPayableDateToBePaidDayMonthAndYear_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Dividends Payable, Date to be Paid</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendPayableDateToBePaidDayMonthAndYear_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Dividend payment date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ClassOfTreasuryStockTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Class of Treasury Stock [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ClassOfTreasuryStockTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Class Of Treasury Stock [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk Benchmark [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Concentration Risk Benchmark</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestExpenseNonoperating_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Expense, Nonoperating</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestExpenseNonoperating_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Interest Expense, Nonoperating, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestExpenseNonoperating_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Interest expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Existence of Residual Value Guarantee [true false]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating leases, existence of residual value guarantee</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stockholders' Equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue Recognition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Residual Value Guarantee, Description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating leases, residual value guarantee description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentCarryingAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentCarryingAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Outstanding Balance before debt issuance costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentCarryingAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentCarryingAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Long-term debt outstanding exclusive of unamortized debt issuance costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendsPayableDateDeclaredDayMonthAndYear_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Dividends Payable, Date Declared</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendsPayableDateDeclaredDayMonthAndYear_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Dividend declaration date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCentralIndexKey_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Central Index Key</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCentralIndexKey_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Central Index Key</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCentralIndexKey_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Entity Central Index Key</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Operating Capital [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Changes in operating assets and liabilities, net of the effects of acquisitions:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinesses_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Divestiture of Businesses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinesses_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from divestiture of a business</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Shares, Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, issued (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Lessee operating and finance lease liability maturity.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee Operating and Finance Lease Liability Maturity [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Future Minimum Lease Payments Under Non-Cancellable Operating and Finance Leases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNoncurrentAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Noncurrent Assets [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNoncurrentAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Prepaid Expense and Other Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Prepaid expenses and other assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Lease, Liability, to be Paid, Year Five</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 31, 2030</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseRemainingLeaseTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Remaining Lease Term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseRemainingLeaseTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating leases, remaining lease term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedOtherFutureLeaseRelatedExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Accrued other future lease-related expenses.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedOtherFutureLeaseRelatedExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Other Future Lease-Related Expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedOtherFutureLeaseRelatedExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued other future lease-related expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Statement [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressStateOrProvince_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, State or Province</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressStateOrProvince_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Address, State or Province</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restrictions on Cash and Cash Equivalents [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Reconciliation of Cash and Cash Equivalents, and Restricted Cash</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 31, 2027</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Maturities, Repayments of Principal in Rolling Year Three</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">May 6, 2027 (Maturity)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Increase Decrease in accrued subcontractor and other direct costs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase Decrease In Accrued Subcontractor And Other Direct Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued subcontractors and other direct costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Lease, Liability, to be Paid, Year One</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 31, 2026</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Income before income taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vesting of RSUs and PSAs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Vesting of Restricted Stock Units and Performance Share Awards [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Vesting of restricted stock units and performance share awards member.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract with customer assets (liabilities), net current.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract With Customer Assets Liabilities Net Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net contract assets (liabilities)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk Type [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Concentration Risk Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity, Class of Treasury Stock [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity Class Of Treasury Stock [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingenciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Loss Contingencies [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingenciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Loss Contingencies [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Liability, Revenue Recognized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue related to contract liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CustomerConcentrationRiskMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer Concentration Risk [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CustomerConcentrationRiskMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer Concentration Risk</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Dividends Payable, Date of Record</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Dividend record date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfAccountsReceivableSecuritization_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Remittances to MUFG during the period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfAccountsReceivableSecuritization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Repayments of Accounts Receivable Securitization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Lease, Liability, to be Paid, after Year Five</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Thereafter</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Treasury Stock, Common, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Treasury stock, shares (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Balance (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Balance (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Summary of reconciliation of billed contract receivables sold to MUFG including receivables sold to MUFC and collected from customers on behalf of MUFG and receivables not yet collected from customers.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Summary of Reconciliation of Billed Contract Receivables Sold to MUFG Including Receivables Sold To MUFC And Collected from Customers On Behalf of MUFG And Receivables Not Yet Collected from Customers [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CoverAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cover [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Event [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Subsequent Event [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Represents accrued information technology and software licensing costs current.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Information Technology And Software Licensing Costs Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">IT and software licensing costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FixedPriceContractMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fixed-Price Contract [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FixedPriceContractMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fixed-Price</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnings Per Share, Basic</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basic</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Earnings Per Share, Basic, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Basic EPS</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeFinanceLeaseOptionToExtend_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Finance Lease, Option to Extend</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeFinanceLeaseOptionToExtend_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finance leases, option to extend lease</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Finance Lease, Residual Value Guarantee, Description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finance leases, residual value guarantee description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseOptionToExtend_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Option to Extend</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseOptionToExtend_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating leases, option to extend lease</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_TermLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Term loan.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_TermLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Term Loan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_TermLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Term Loan</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingExpensesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Expenses [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingExpensesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating costs and expenses:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Liability, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Contract liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Basis of presentation and nature of operations.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Basis Of Presentation And Nature Of Operations [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basis of Presentation and Nature of Operations [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Other</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Derivative Instruments and Hedging Activities Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Derivative Instruments and Hedging Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Unused Borrowing Capacity, Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Unused borrowing capacity amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Stock-based compensation expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share-Based Compensation Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Retained Earnings (Accumulated Deficit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Retained earnings</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Retained Earnings (Accumulated Deficit), Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PlanNameAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Plan Name [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PlanNameAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Plan Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SaleOfBilledReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Ending balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SaleOfBilledReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Beginning balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SaleOfBilledReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Sale Of Billed Receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SaleOfBilledReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Sale of billed receivables.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets, Current [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current Assets:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsOfDividendsCommonStock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments of Ordinary Dividends, Common Stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsOfDividendsCommonStock_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Dividends paid</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, Rolling Year Four</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 30, 2029</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScenarioPlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Scenario, Plan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScenarioPlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Scenario, Plan</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Operating Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net Cash Used in Operating Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ProductsAndServicesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Product and Service [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ProductsAndServicesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Product and Service</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accumulated other comprehensive loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Accumulated Other Comprehensive Income (Loss), Net of Tax, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt Instrument [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Property and equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepositLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deposit Liability, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepositLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deposits</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Property and Equipment, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Property, Plant and Equipment, Net, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash Flows from Operating Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementsRecurringMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value, Recurring [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementsRecurringMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fair Value, Recurring</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VestingAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Vesting [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VestingAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vesting</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Par or Stated Value Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, par value (in dollars per share)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementOfCashFlowsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Cash Flows [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accumulated Foreign Currency Adjustment Attributable to Parent [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Foreign Currency Translation Adjustments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Antidilutive Securities, Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Business combination, recognized identifiable assets acquired and liabilities assumed, working capital.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Working Capital</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Working capital acquired</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Net working capital</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditDerivativesContractTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Derivatives Contract Type [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsNotesAndLoansReceivableLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts, Notes, Loans and Financing Receivable [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedComputerSoftwareNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Capitalized Computer Software, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedComputerSoftwareNet_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Capitalized Computer Software, Net, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedComputerSoftwareNet_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Capitalized Computer Software, Net, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedComputerSoftwareNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Capitalized Computer Software, Net, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedComputerSoftwareNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Capitalized software intangible assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CMYSolutionsLLCMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">C M Y Solutions, L L C.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CMYSolutionsLLCMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">C M Y Solutions, L L C. [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CMYSolutionsLLCMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">CMY Solutions, LLC.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Maturities, Repayments of Principal in Rolling Year Four</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">May 6, 2027 (Maturity)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Employee related restructuring cost</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Restructuring Costs, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Acquired Finite-Lived Intangible Assets [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity Components</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity Components [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amortization of Intangible Assets Acquired in Business Combinations [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Amortization of intangible assets acquired in business combinations.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Amortization of Intangible Assets Acquired in Business Combinations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SecurityAndOtherCivilianAndCommercialMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Security and other civilian &amp; commercial.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SecurityAndOtherCivilianAndCommercialMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Security And Other Civilian And Commercial [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SecurityAndOtherCivilianAndCommercialMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Security and Other Civilian &amp; Commercial</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressAddressLine1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, Address Line One</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressAddressLine1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Address, Address Line One</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Earnings Per Share Including Dilutive Effect of Stock Awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Employee-related Liabilities, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued salaries and benefits</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Employee-related Liabilities, Current, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Awards Granted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_HedgingDesignationDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Hedging Designation [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Event Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Subsequent Event Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Weighted Average Shares Excluded from Calculation of EPS</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Line of credit facility, maximum borrowing capacity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Hedging Relationship [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_AmendmentFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amendment Flag</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_AmendmentFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Amendment Flag</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Comprehensive Income (Loss), Tax, Portion Attributable to Parent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Effect of taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Other Comprehensive Income (Loss), Tax, Portion Attributable to Parent, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating lease liabilities - non-current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Lease liabilities - non-current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CostBasedContractMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Cost based contract.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CostBasedContractMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cost Based Contract [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CostBasedContractMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cost-Based</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt Instrument, Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Additional Paid in Capital, Common Stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Additional paid-in capital</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Accrued facilities rental and lease exit costs current.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Facilities Rental And Lease Exit Costs Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Facilities rental and lease exit costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ReceivablesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Receivables [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Net Income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeLeaseDescriptionTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Lease, Description [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeLeaseDescriptionTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Lessee Lease Description [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CreativeSystemsAndConsultingAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Creative systems and consulting acquisition.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CreativeSystemsAndConsultingAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Creative Systems And Consulting Acquisition [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CreativeSystemsAndConsultingAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Creative Systems and Consulting Acquisition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Exercise of stock options (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VariableRateDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Variable Rate [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VariableRateDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Variable Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Finance Lease, Remaining Lease Term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finance leases, remaining lease term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityComponentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity Component [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityComponentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity Component</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statistical Measurement [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Statistical Measurement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNonoperatingIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other (expense) income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNonoperatingIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Nonoperating Income (Expense)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNonoperatingIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Other Nonoperating Income (Expense), Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Treasury Stock, Common [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Treasury Stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disaggregation of Revenue [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Disaggregation Of Revenue [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProfitLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Income (Loss), Including Portion Attributable to Noncontrolling Interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProfitLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Net income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProfitLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net Income (Loss), Including Portion Attributable to Noncontrolling Interest, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Shares Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, shares issued (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amortization Period Of Pre Transition Foreign Currency Losses Against Taxable Income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Amortization period of pre transition foreign currency losses against taxable income.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Amortization period of pre-transition foreign currency losses against taxable income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Master receivables purchase agreement with MUFG bank.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Master Receivables Purchase Agreement with MUFG Bank [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Master Receivables Purchase Agreement with MUFG Bank</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CompanyOwnedLifeInsurancePoliciesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Company owned life insurance policies.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CompanyOwnedLifeInsurancePoliciesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Company Owned Life Insurance Policies [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CompanyOwnedLifeInsurancePoliciesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Company Owned Life Insurance Policies</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SegmentDepreciationAndAmortizationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Depreciation and Amortization [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SegmentDepreciationAndAmortizationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Segment depreciation and amortization.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SegmentDepreciationAndAmortizationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Depreciation and Amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AugustThirtyFirstTwoThousandTwentyThreeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">August 31, 2023.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AugustThirtyFirstTwoThousandTwentyThreeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">August Thirty First Two Thousand Twenty Three [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AugustThirtyFirstTwoThousandTwentyThreeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">August 31, 2023</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PayablesAndAccrualsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payables and Accruals [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedCashCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restricted Cash, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedCashCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted cash</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfFinancingReceivablesPastDueTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Financing Receivable, Past Due [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed, Goodwill</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Business combination recognized identifiable assets acquired and liabilities assumed, goodwill.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Goodwill</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Prepaid Expense and Other Assets, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Prepaid expenses and other assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RevenueFromContractWithCustomerLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Revenue from contract with customer.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RevenueFromContractWithCustomerLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue From Contract With Customer [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RevenueFromContractWithCustomerLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue From Contract With Customer [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SeveranceCosts1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Severance Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SeveranceCosts1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Remaining of severance cost</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AppliedEnergyGroupIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Applied Energy Group, Inc.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AppliedEnergyGroupIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Applied Energy Group Inc [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AppliedEnergyGroupIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Applied Energy Group, Inc.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_OmnibusPlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Represents the Omnibus Plan.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_OmnibusPlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Omnibus Plan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_OmnibusPlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Omnibus Plan</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Comprehensive income, net of tax</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Shares, Outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, outstanding (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Common Stock, Shares, Outstanding, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Common Stock, Shares, Outstanding, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finite-Lived Intangible Assets, Major Class Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestIncomeExpenseNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Interest Income (Expense), Net, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestIncomeExpenseNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Income (Expense), Operating</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestIncomeExpenseNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Interest, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Increase (decrease) in deferred income taxes and unrecognized income tax benefits.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Deferred Income Taxes and Unrecognized Income Tax Benefits</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Deferred income taxes and unrecognized income tax benefits</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Estimated useful lives of acquired intangible assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Par or Stated Value Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, par value (in dollars per share)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Antidilutive Securities [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_FinanceLeasesTerminationLeaseTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Finance leases, termination lease term.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_FinanceLeasesTerminationLeaseTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Leases, Termination Lease Term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_FinanceLeasesTerminationLeaseTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finance leases, termination lease term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Increase (decrease) in operating lease assets and liabilities.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase Decrease In Operating Lease Assets And Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Operating lease assets and liabilities, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Interactive Data Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Interactive Data Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RepaymentsOfRestrictedContractFunds_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Repayments of restricted contract funds.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RepaymentsOfRestrictedContractFunds_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Repayments Of Restricted Contract Funds</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RepaymentsOfRestrictedContractFunds_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Payment of restricted contract funds</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ImpairmentOfLeasehold_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Impairment of Leasehold</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ImpairmentOfLeasehold_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Impairment related to leasehold improvement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnSaleOfBusiness_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Gain (Loss) on Disposition of Business</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnSaleOfBusiness_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Gain on divestiture</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnSaleOfBusiness_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Gain on divestiture of a business</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Derivative [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentQuarterlyReport_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Quarterly Report</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentQuarterlyReport_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Document Quarterly Report</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Goodwill [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total of cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Financial Position Location, Balance [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Balance Sheet Location</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Lease, Liability, Undiscounted Excess Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Less: Interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statistical Measurement [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Statistical Measurement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_USStateAndLocalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">US state and local government.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_USStateAndLocalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">U S State And Local Government [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_USStateAndLocalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">U.S. State and Local Government</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSold_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cost of Goods and Services Sold</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSold_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Direct costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSold_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total direct costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsFairValueDisclosure_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets, Fair Value Disclosure</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsFairValueDisclosure_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Assets, Fair Value Disclosure, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsFairValueDisclosure_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Assets, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disaggregation of Revenue [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Disaggregation of Revenue</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share-based compensation arrangement by share-based payment award, number of shares available for grant</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Reconciliation of Cash Collections and Remittances to MUFG for Sale of Billed Receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Summary Of Reconciliation Of Cash Collections And Remittances For Sale Of Billed Receivables [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Summary of reconciliation of cash collections and remittances for sale of billed receivables.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Derivative [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NumberOfOfficeFacilitiesCeasedUse_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of office facilities, ceased use.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NumberOfOfficeFacilitiesCeasedUse_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number of Office Facilities, Ceased Use</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NumberOfOfficeFacilitiesCeasedUse_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of office facilities, ceased use</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Average Grant Date Fair Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementLocationAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Income Location, Balance [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Assets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Assets_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Procceds from sale of billed receivables but not yet remitted to MUFG</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds From Sale of Billed Receivables Not Yet Remitted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Proceeds from sale of billed receivables not yet remitted.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CashSettledRSUsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Represents cash settled RSUs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CashSettledRSUsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash Settled R S Us [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CashSettledRSUsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash Settled RSUs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CashSettledRSUsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Cash-Settled RSUs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 31, 2026</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Maturities, Repayments of Principal in Rolling Year Two</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">March 31, 2027</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Basis of Pricing [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract with Customer, Basis of Pricing</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Long-Term Debt Instruments [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt Instrument [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 31, 2025</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Maturities, Repayments of Principal in Next Rolling 12 Months</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">March 31, 2026</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Recent Accounting Pronouncements</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressCityOrTown_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, City or Town</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressCityOrTown_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Address, City or Town</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">AOCI Attributable to Parent [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accumulated Other Comprehensive Loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementBusinessSegmentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segments [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementBusinessSegmentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsFairValueDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets, Fair Value Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsFairValueDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Assets:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Maturities of Long-Term Debt [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Future Scheduled Repayments of Debt Principal</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_InConnectionWithVestingOfRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">In Connection with Vesting of Restricted Stock Units</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_InConnectionWithVestingOfRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">In connection with vesting of restricted stock units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_InConnectionWithVestingOfRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">In connection with vesting of restricted stock units.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Lease, Liability, to be Paid, Year Two</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 31, 2027</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_HedgingRelationshipDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Hedging Relationship [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditDerivativesByContractTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Derivatives Contract Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleAndCollectionOfReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Proceeds from Sale and Collection of Receivables, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleAndCollectionOfReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Sale and Collection of Receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleAndCollectionOfReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Sale of billed contract receivables amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-Based Payment Arrangement, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity-based compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CreditFacilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Credit facility.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CreditFacilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Facility [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CreditFacilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Credit Facility</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock-based Compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Contract Receivables Sold to MUFG but Not Yet Collected From Customers</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Summary Of Contract Receivables Sold But Not Yet Collected From Customers [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Summary of contract receivables sold but not yet collected from customers.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NonemployeeDirectOrAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Non-Employee Director Awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NonemployeeDirectOrAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Nonemployee Direct Or Awards [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NonemployeeDirectOrAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Represents share-based awards exclusive to non-employee directors.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accumulated Other Comprehensive Income (Loss) [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accumulated Other Comprehensive Income Loss [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting, CODM, Individual Title and Position or Group Name [Extensible Enumeration]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_USFederalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">US federal government.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_USFederalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">U S Federal Government [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_USFederalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">U.S. Federal Government</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueDisclosuresAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value Disclosures [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromAccountsReceivableSecuritization_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Collections from customers during the period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromAccountsReceivableSecuritization_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Collections from customers during the period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromAccountsReceivableSecuritization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Accounts Receivable Securitization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Rate Cash Flow Hedge Gain (Loss) to be Reclassified During Next 12 Months, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Expects to reclassify unrealized losses related to change in fair value of interest rate hedge agreement from accumulated other comprehensive (loss) income into earnings</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionProFormaInformationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition, Pro Forma Information [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionProFormaInformationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Unaudited Condensed Pro Forma Financial Information</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation Uncertain Tax Position</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Effective income tax rate reconciliation uncertain tax position.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Uncertain tax position</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CommercialMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Commercial.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CommercialMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commercial [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CommercialMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Commercial</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Mergers, Acquisitions and Dispositions Disclosures [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Acquisition and Divestiture</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Value, Stock Options Exercised</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Exercise of stock options</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeLeaseDescriptionLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Lease, Description [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeLeaseDescriptionLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Lessee Lease Description [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities, Current [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current Liabilities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringCostsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring Costs [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentType_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentType_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Document Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, Rolling Year Three</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 30, 2028</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProvisionForOtherCreditLosses_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Provision for Other Credit Losses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProvisionForOtherCreditLosses_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Provision for credit losses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_Security12bTitle_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Title of 12(b) Security</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_Security12bTitle_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Title of each class</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash and Cash Equivalents, at Carrying Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash and cash equivalents</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Cash and Cash Equivalents, at Carrying Value, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Financial Position Location, Balance [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Balance Sheet Location</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNoncurrentLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Noncurrent Liabilities [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNoncurrentLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other Long-Term Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TrademarksAndTradeNamesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Trademarks and Trade Names [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TrademarksAndTradeNamesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Trade Names and Trademarks</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LeaseCostTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lease, Cost [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LeaseCostTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Lease Cost</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Stockholders' Equity [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Fiscal Period Focus</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Document Fiscal Period Focus</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Excluding Current Maturities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-term debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Long-Term Debt, Excluding Current Maturities, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Long-term debt - non-current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share-based compensation arrangement by share-based payment award, number of shares grants</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfGoodwillTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Goodwill [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfGoodwillTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Changes in Carrying Amount of Goodwill</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Cash collected not yet remitted for receivables sold</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Cash collected not yet remitted to purchaser of billed receivables.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash collected not yet remitted to purchaser of billed receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash collected not yet remitted to purchaser of billed receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition, Effective Date of Acquisition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business acquisition date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disaggregation of Revenue [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeFinanceLeaseOptionToTerminate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Finance Lease, Option to Terminate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeFinanceLeaseOptionToTerminate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finance leases, option to terminate lease</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Event Type [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Subsequent Event Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Loans, Notes, Trade and Other Receivables Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract Receivables, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, Rolling Year Two</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 31, 2027</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SeveranceChargeExpectedToBePaid_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Severance charge expected to be paid</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SeveranceChargeExpectedToBePaid_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Severance charge expected to be paid.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfTreasuryStockByClassTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Class of Treasury Stock [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfTreasuryStockByClassTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Repurchases of Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Financial Instruments [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Financial Instruments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RestrictedContractFunds_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Restricted contract funds.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RestrictedContractFunds_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restricted Contract Funds</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RestrictedContractFunds_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted contract funds</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TimeAndMaterialsContractMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Time-and-Materials Contract [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TimeAndMaterialsContractMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Time-and-Materials</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Expected period to satisfy performance obligations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gain on Sale of Interest Rate Hedge Agreement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Investing Activities [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash Flows from Investing Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Dividends, Per Share, Declared</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash dividends declared per common share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Revenue from clients</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accumulated Other Comprehensive Income (Loss) [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accumulated Other Comprehensive Income Loss [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DesignatedAsHedgingInstrumentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Designated as Hedging Instrument [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DesignatedAsHedgingInstrumentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Designated as Hedging Instrument</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeFinanceLeaseRenewalTerm1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Finance Lease, Renewal Term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeFinanceLeaseRenewalTerm1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finance leases, extendable lease term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Effective Income Tax Rate Reconciliation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Selling, General and Administrative Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Indirect and selling expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Selling, General and Administrative Expense, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Repurchased During Period, Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock Repurchased During Period, Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Facility [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Credit Facility</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Depreciation, Depletion and Amortization, Nonproduction</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Depreciation and amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Depreciation, Depletion and Amortization, Nonproduction, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Estimated Useful Lives of Acquired Intangible Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Accrued Liabilities, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other accrued expenses and current liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Accounts Payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounts payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Increase (Decrease) in Accounts Payable, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromPaymentsForOtherFinancingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other financing, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromPaymentsForOtherFinancingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from (Payments for) Other Financing Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities and Equity [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">LIABILITIES AND STOCKHOLDERS' EQUITY</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentPeriodEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Period End Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentPeriodEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Document Period End Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Financing Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net Cash Provided by Financing Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Effective tax rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Effective tax rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityNoteAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stockholders' Equity Note [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities, Noncurrent [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-term Liabilities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_TwoHundredMillionShareRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">$200 Million Share Repurchase Program</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_TwoHundredMillionShareRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Two Hundred Million Share Repurchase Program [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_TwoHundredMillionShareRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Two hundred million share repurchase program.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Antidilutive securities excluded from computation of earnings per share, amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Restricted Stock Units</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">APIC, Share-Based Payment Arrangement, Increase for Cost Recognition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">APIC, Share-Based Payment Arrangement, Increase for Cost Recognition, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Goodwill</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Liabilities, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total accrued expenses and other current liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting, CODM, Profit (Loss) Measure, How Used, Description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Expense (Benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Provision for income taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Income Tax Expense (Benefit), Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendsCommonStockCash_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Dividends declared</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendsCommonStockCash_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Dividends, Common Stock, Cash</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_TradingSymbol_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Trading Symbol</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_TradingSymbol_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Trading Symbol</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combinations [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VariableRateAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Variable Rate [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VariableRateAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Variable Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity, Attributable to Parent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total Stockholders&#8217; Equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, after Rolling Year Five</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Thereafter</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxesReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Taxes Receivable, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxesReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income tax receivable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_InitialPerformanceVestingPeriodMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Represents information relating to an initial performance vesting period.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_InitialPerformanceVestingPeriodMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Initial Performance Vesting Period [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_InitialPerformanceVestingPeriodMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Initial Performance Vesting Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromOtherShortTermDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Other Short-Term Debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromOtherShortTermDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from other short-term borrowings</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Liabilities, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other long-term liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeInstrumentRiskAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Derivative Instrument [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments to Acquire Businesses, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash purchase price</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedStockUnitsRSUMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restricted Stock Units (RSUs) [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedStockUnitsRSUMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted Stock Units (RSUs)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedStockUnitsRSUMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Restricted Stock Awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsReceivableSale_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Billed receivables sold during the period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsReceivableSale_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Receivable, Sale</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Goodwill</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Goodwill, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Balance as of December 31, 2022</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Balance as of June 30, 2023</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Unrecognized compensation expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock-Based Compensation Unrecognized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash and Cash Equivalents Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted Cash</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BlantonAndAssociatesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Blanton and Associates [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BlantonAndAssociatesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Blanton and Associates [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BlantonAndAssociatesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Blanton and Associates</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BlantonAndAssociatesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Blanton &amp; Associates</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Repurchase Program [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share Repurchase Program</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Stock-Based Compensation Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AmortizationOfIntangibleAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Amortization of intangible asset.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AmortizationOfIntangibleAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amortization Of Intangible Asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AmortizationOfIntangibleAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Amortization of intangible assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Contract Receivables, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromSaleOfBilledReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from sale of billed receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromSaleOfBilledReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds From Sale Of Billed Receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromSaleOfBilledReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Proceeds from sale of billed receivables.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Non-cash deferred income tax expense (benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Income Tax Expense (Benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Deferred Income Tax Expense (Benefit), Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Lease, Liability, to be Paid, Year Three</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 30, 2028</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LeasesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Leases [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TechnologyBasedIntangibleAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Technology-Based Intangible Assets [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TechnologyBasedIntangibleAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Developed Technology</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_UseOfEstimates_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Use of Estimates, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_UseOfEstimates_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Use of Estimates</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskPercentage1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk, Percentage</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskPercentage1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue from clients, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendsPayableAmountPerShare_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Dividends Payable, Amount Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendsPayableAmountPerShare_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash dividend per share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_StatementScenarioAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Scenario [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Contract Assets and Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RevenueFromContractWithCustomerTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Revenue from contract with customer.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RevenueFromContractWithCustomerTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue From Contract With Customer [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RevenueFromContractWithCustomerTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue From Contract With Customer [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_SecurityExchangeName_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Security Exchange Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_SecurityExchangeName_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Security Exchange Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_PaymentsForShareRepurchasesShares_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Payments for share repurchases (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_PaymentsForShareRepurchasesShares_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments For Share Repurchases Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_PaymentsForShareRepurchasesShares_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Payments for share repurchases shares.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition, Acquiree [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business Acquisition, Acquiree</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total operating costs and expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashFlowHedgingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash Flow Hedging [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashFlowHedgingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash Flow Hedging</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revolving Credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeMaturityDates_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Derivative, Contract End Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeMaturityDates_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Maturity date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueDisclosuresTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value Disclosures [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueDisclosuresTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fair Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Event [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Subsequent Event</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MaximumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Maximum [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MaximumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Maximum</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring and Related Activities Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Organizational Realignment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities and Equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total Liabilities and Stockholders&#8217; Equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Right-of-Use Asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating lease - right-of-use assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Supplemental Cash Flow Information [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Supplemental Disclosure of Cash Flow Information</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancialLiabilitiesFairValueDisclosure_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Financial Liabilities Fair Value Disclosure</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancialLiabilitiesFairValueDisclosure_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Financial Liabilities Fair Value Disclosure, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancialLiabilitiesFairValueDisclosure_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Liabilities, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Diluted EPS</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnings Per Share, Diluted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Diluted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Earnings Per Share, Diluted, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Reconciliation of Revenue from Segments to Consolidated [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Segment Revenue, Significant Segment Expenses, and Segment Profit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Liabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Liabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value Hierarchy and NAV [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fair Value Hierarchy and NAV</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total Current Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Investing Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net Cash Used in Investing Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ReconciliationFromSegmentTotalsToConsolidatedAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reconciliation [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NonEmployeeDirectorStockAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Non-Employee Director Stock Awards member.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NonEmployeeDirectorStockAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Non-Employee Director Stock Awards [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NonEmployeeDirectorStockAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Non-Employee Director Stock Awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share-based compensation arrangement by share-based payment award, award vesting period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Existence of Option to Extend [true false]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating leases, existence of option to extend</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityFilerCategory_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Filer Category</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityFilerCategory_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Filer Category</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer-Related Intangibles</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer-Related Intangible Assets [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basis of Presentation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeNotionalAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Derivative, Notional Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeNotionalAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Notional amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Current Fiscal Year End Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current Fiscal Year End Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Summary of reconciliation of cash collections from customers of billed contract receivables previously sold to MUFG including previous sold receivables and remittance of cash collections to MUFG and cash collected but not yet remitted to MUFG.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables and Remittance of Cash Collections to MUFG and Cash Collected But Not Yet Remitted to MUFG [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fair Value Assets And Liabilities Measured On Recurring And Nonrecurring Basis [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Less: Interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DeferredCompensationPlanLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Deferred compensation plan liabilities.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DeferredCompensationPlanLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Compensation Plan Liabilities [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DeferredCompensationPlanLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deferred Compensation Plan Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Noncash Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Non-cash equity compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Share-Based Payment Arrangement, Noncash Expense, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInReceivables_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Contract receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Increase (Decrease) in Receivables, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill, Foreign Currency Translation Gain (Loss)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Effect of foreign currency translation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Existence of Option to Terminate [true false]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating leases, existence of option to terminate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">February 28, 2025</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">February 28, 2025.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">February Twenty Eight Two Thousand Twenty Five [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityRegistrantName_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Registrant Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityRegistrantName_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Entity Registrant Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ScheduleOfAcquisitionAndDivestitureTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule of acquisition and divestiture.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ScheduleOfAcquisitionAndDivestitureTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule Of Acquisition And Divestiture [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ScheduleOfAcquisitionAndDivestitureTable_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Schedule of Acquisition and Divestiture [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_LettersOfCreditGuarantees_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Letters of credit guarantees</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_LettersOfCreditGuarantees_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Letters of credit guarantees</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_LettersOfCreditGuarantees_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Letters of credit guarantees.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NumberOfReportableSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number of Reportable Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NumberOfReportableSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of reporting segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NumberOfReportableSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Number of Reportable Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule Of Share Based Compensation Arrangements By Share Based Payment Award [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnings Per Share [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Earnings Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Emerging Growth Company</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Emerging Growth Company</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares Outstanding, Basic</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basic</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Weighted-average number of basic shares outstanding during the period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Weighted Average Number of Shares Outstanding, Basic, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VestingDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Vesting [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VestingDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vesting</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandbyLettersOfCreditMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Standby Letters of Credit [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandbyLettersOfCreditMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Standby Letters of Credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingenciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Loss Contingencies [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingenciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Loss Contingencies [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Lease, Liability, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finance lease liabilities - non-current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Lease liabilities - non-current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SemanticBitsLLCMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">SemanticBits</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SemanticBitsLLCMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">SemanticBits, LLC .</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SemanticBitsLLCMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Semantic Bits L L C [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SemanticBitsLLCMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">SemanticBits LLC</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseOptionToTerminate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Option to Terminate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseOptionToTerminate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating leases, option to terminate lease</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RestructuringAndRelatedCostLineItemsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring And Related Cost LineItems [Line items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_RestructuringAndRelatedCostLineItemsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Restructuring And Related Cost LineItems [Line items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Shares Authorized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, authorized (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Repurchase Program [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share Repurchase Program</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Payable, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Long-Term Debt Instruments [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Billed contract receivables sold but not yet collected from customers.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Billed Contract Receivables Sold But Not Yet Collected From Customers</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Beginning balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Ending balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Concentration Risk Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash and Cash Equivalents [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueInputsLevel1Member_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value, Inputs, Level 1 [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueInputsLevel1Member_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Level 1</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancialInstrumentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Financial Instrument [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancialInstrumentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Financial Instrument</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Awards Granted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Nonvested Share Activity [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Comprehensive Income (Loss) Note [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accumulated Other Comprehensive Loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NumberOfOpenStandbyLettersOfCredit_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of open standby letters of credit.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NumberOfOpenStandbyLettersOfCredit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Open Standby Letters Of Credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_NumberOfOpenStandbyLettersOfCredit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of open standby letters of credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillPurchaseAccountingAdjustments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill, Measurement Period Adjustment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillPurchaseAccountingAdjustments_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Measurement period adjustments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillPurchaseAccountingAdjustments_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Add: Goodwill resulting from business combination</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_EmployeeStockAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Employee stock awards member.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_EmployeeStockAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Employee Stock Awards [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_EmployeeStockAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Employee Stock Awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Components of Accumulated Other Comprehensive Loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountingPoliciesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounting Policies [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity, Attributable to Parent [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stockholders&#8217; Equity:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Effect of Exchange Rate Changes on Cash, Cash Equivalents, and Restricted Cash</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, Other Reconciling Items, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Accrued expenses and other current liabilities.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Expenses And Other Current Liabilities [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued Expenses and Other Current Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AcquisitionAndDivestitureLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Acquisition and divestiture.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AcquisitionAndDivestitureLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Acquisition And Divestiture [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AcquisitionAndDivestitureLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Acquisition and Divestiture [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Statement [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfOtherShortTermDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Repayments of Other Short-Term Debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfOtherShortTermDebt_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Repayments of other short-term borrowings</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Event [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Subsequent Event [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Shares Authorized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, shares authorized (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_JuneTwentySevenTwoThousandTwentyEightMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">June 27, 2028.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_JuneTwentySevenTwoThousandTwentyEightMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">June Twenty Seven Two thousand Twenty Eight [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_JuneTwentySevenTwoThousandTwentyEightMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">June 27, 2028</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed, Accrued Expenses and Other Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Business combination recognized identifiable assets acquired and liabilities assumed, accrued expenses and other liabilities.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityFileNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Securities Act File Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityFileNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity File Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Segment Information</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net Change in Cash, Cash Equivalents, and Restricted Cash</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnings Per Share [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Notes Tables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Earnings per Share:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Asset, after Allowance for Credit Loss, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Contract assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Contract with Customer, Asset, after Allowance for Credit Loss, Current, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">State taxes, net of federal benefit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyEightMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">February 28, 2028.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyEightMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">February Twenty Eight Two Thousand Twenty Eight [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyEightMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">February 28, 2028</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementOfFinancialPositionAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Financial Position [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Income (Loss)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Operating income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityShellCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Shell Company</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityShellCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Shell Company</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Assets [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other Assets:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedProfessionalFeesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Professional Fees, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedProfessionalFeesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Professional services</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromRestrictedContractFunds_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Proceeds from restricted contract funds.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromRestrictedContractFunds_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds From Restricted Contract Funds</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromRestrictedContractFunds_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Receipt of restricted contract funds</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Tax Identification Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Tax Identification Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">ASSETS</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCurrentReportingStatus_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Current Reporting Status</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCurrentReportingStatus_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Current Reporting Status</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Lease, Liability, to be Paid, Year Four</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 30, 2029</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility, Interest Rate During Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Interest rate on credit facility</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongtermDebtTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongtermDebtTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-Term Debt, Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Events [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Deferred compensation investments in cash surrender life insurance.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Compensation Investments In Cash Surrender Life Insurance [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deferred Compensation Investments in Cash Surrender Life Insurance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentFiscalYearFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Fiscal Year Focus</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentFiscalYearFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Document Fiscal Year Focus</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Value, Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, par value $.001; 5,000,000 shares authorized; none issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfLongTermDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Repayments of Long-Term Debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfLongTermDebt_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Payments on working capital facilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfLongTermDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Repayments of Long-Term Debt, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractReceivablesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract receivables.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractReceivablesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract Receivables [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Cash, Cash Equivalents, and Restricted Cash, End of Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Cash, Cash Equivalents, and Restricted Cash, Beginning of Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business Acquisition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Dividends Payable, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued dividends</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DividendsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Dividends</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restricted Cash and Cash Equivalents, Current [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CityAreaCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label">City Area Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CityAreaCode_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">City Area Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Reclassification, Comparability Adjustment [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Reclassification</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LettersOfCreditOutstandingAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Letters of Credit Outstanding, Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LettersOfCreditOutstandingAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Letters of credit outstanding, amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LettersOfCreditOutstandingAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Letters of credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total Current Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeContractTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Derivative Contract [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesAndOtherLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Liabilities and Other Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesAndOtherLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued expenses and other current liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesAndOtherLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Accrued and other future expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility, Lender [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Line of Credit Facility, Lender</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CommercialMarketingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Commercial marketing.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CommercialMarketingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commercial Marketing Member</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CommercialMarketingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Commercial Marketing</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Statutory tax rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DirectLaborAndRelatedFringeCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Direct Labor And Related Fringe Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DirectLaborAndRelatedFringeCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Direct labor and related fringe costs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DirectLaborAndRelatedFringeCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Direct labor and related fringe costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business combination recognized identifiable assets acquired and liabilities assumed contract assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Business combination recognized identifiable assets acquired and liabilities assumed contract assets.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_LocalPhoneNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Local Phone Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_LocalPhoneNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Local Phone Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseImpairmentLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Impairment Loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseImpairmentLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Impairment related to operating lease right-of-use asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Purchase price allocated to intangibles</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Customer-related intangibles</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_HedgingDesignationAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Hedging Designation [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commitments and Contingencies Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Shares, Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Balance (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Balance (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FederalFundsEffectiveSwapRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fed Funds Effective Rate Overnight Index Swap Rate [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FederalFundsEffectiveSwapRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fed Funds Effective Rate Overnight Index Swap Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Treasury Stock, Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Treasury Stock, Value, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockValue_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Treasury stock, 5,876,530 and 5,520,672 shares at March 31, 2025 and December 31, 2024, respectively</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_USStateAndInternationalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">US state and international government.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_USStateAndInternationalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">U S State And International Government [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_USStateAndInternationalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total Government</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeFixedInterestRate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Derivative, Fixed Interest Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeFixedInterestRate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Derivative fixed interest rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Lease liabilities - current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DevelopedTechnologyRightsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Developed Technology Rights [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DevelopedTechnologyRightsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Developed Technology</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Retained Earnings [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Retained Earnings</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Prepaid Expenses and Other Current Assets [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Prepaid Expenses and Other Current Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounts receivable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value Measurements, Recurring and Nonrecurring [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Financial Instruments Measured at Fair Value on Recurring Basis</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentTransitionReport_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Transition Report</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentTransitionReport_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Document Transition Report</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_StockRepurchaseProgramAuthorizedAmount1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock repurchase program, authorized amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_StockRepurchaseProgramAuthorizedAmount1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Repurchase Program, Authorized, Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Section 987 regulations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Unamortized Discount (Premium) and Debt Issuance Costs, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Unamortized debt issuance costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Unamortized debt issuance costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Debt Instrument, Unamortized Discount (Premium) and Debt Issuance Costs, Net, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deferred income taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Income Tax Assets, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_LesseeOperatingLeaseTerminationTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Lessee operating lease termination term.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_LesseeOperatingLeaseTerminationTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee Operating Lease Termination Term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_LesseeOperatingLeaseTerminationTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating leases, termination lease term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MinimumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Minimum [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MinimumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Minimum</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common Stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Payable and Accrued Liabilities Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued Expenses and Other Current Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted cash</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Additional Paid-in Capital [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Additional Paid-in Capital</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounts payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill, Written off Related to Sale of Business Unit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Minus: Goodwill resulting from business divestiture</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Less: Goodwill resulting from business divestiture</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Adjustments to reconcile net income to net cash provided by operating activities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementLocationDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Income Location, Balance [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_VestingOfRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Vesting of Restricted Stock Units.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_VestingOfRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Vesting of Restricted Stock Units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_VestingOfRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vesting of RSUs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Assets, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segments [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Other Operating Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Increase (Decrease) in Other Operating Liabilities, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PerformanceSharesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Performance Shares [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PerformanceSharesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Performance Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Financing Receivable, Past Due [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Common Stock, Shares Outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Common Stock, Shares Outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Accrued Liabilities and Other Operating Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued expenses and other current liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disaggregation of Revenue [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Disaggregation Of Revenue [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Basis of presentation and nature of operations.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Basis Of Presentation And Nature Of Operations [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basis Of Presentation And Nature Of Operations [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts and Financing Receivables [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Basis of Accounting, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basis of Presentation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ScenarioUnspecifiedDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Scenario [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CustomerRelationshipsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer Relationships [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CustomerRelationshipsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer Relationships</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Income Taxes Payable, Net of Income Taxes Receivable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income tax receivable and payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Lease, Liability, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finance lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Lease liabilities - current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedSubcontractorAndOtherDirectCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Represents accrued subcontractor and other direct costs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedSubcontractorAndOtherDirectCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Subcontractor And Other Direct Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccruedSubcontractorAndOtherDirectCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued subcontractors and other direct costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Value, Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, par value $.001; 70,000,000 shares authorized; 24,302,825 and 24,186,962 shares issued at March 31, 2025 and December 31, 2024, respectively; 18,426,295 and 18,666,290 shares outstanding at March 31, 2025 and December 31, 2024, respectively</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Common stock, par value $.001; 70,000,000 shares authorized; 24,302,825 and 24,186,962 shares issued at March 31, 2025 and December 31, 2024, respectively; 18,426,295 and 18,666,290 shares outstanding at March 31, 2025 and December 31, 2024, respectively</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Employee Related Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued salaries and benefits</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Increase (Decrease) in Employee Related Liabilities, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer Benchmark [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue from Contract with Customer</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, Next Rolling 12 Months</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 31, 2026</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DelayedDrawTermLoanFacilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Delayed draw term loan facility.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DelayedDrawTermLoanFacilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Delayed Draw Term Loan Facility [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_DelayedDrawTermLoanFacilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Delayed Draw Term Loan Facility</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Measurement Frequency [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Measurement Frequency</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Accrued Liabilities [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Accrued Expenses and Other Current Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingencies_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commitments and Contingencies</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingencies_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Commitments and Contingencies (Note 14)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_InternationalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">International government.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_InternationalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">International Government [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_InternationalGovernmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">International Government</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxesPaid_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Taxes Paid</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxesPaid_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares Outstanding, Diluted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Diluted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Weighted-average number of diluted shares outstanding during the period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SecuredOvernightFinancingRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Secured Overnight Financing Rate [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SecuredOvernightFinancingRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Secured Overnight Financing Rate [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SecuredOvernightFinancingRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Secured Overnight Financing Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Receivable, after Allowance for Credit Loss, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract receivables, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Contract receivables, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Renewal Term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating leases, extendable lease term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Commodity Contract Assets and Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Net contract assets and liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total future minimum lease payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SubcontractorsAndOtherDirectCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subcontractors And Other Direct Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SubcontractorsAndOtherDirectCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Subcontractors and other direct costs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_SubcontractorsAndOtherDirectCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Subcontractors and other direct costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk Benchmark [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Concentration Risk Benchmark</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, Rolling Year Five</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">March 31, 2030</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel">Total lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Total lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finance Lease, Liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntitySmallBusiness_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Small Business</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntitySmallBusiness_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Small Business</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingInformationLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting Information [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_MillionShareRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">300.0 Million Share Repurchase Program</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_MillionShareRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">300.0 Million Share Repurchase Program [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_MillionShareRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">300.0 million share repurchase program member.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BilledContractReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Billed Contracts Receivable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BilledContractReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Billed and billable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractReceivablesAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract receivables.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ContractReceivablesAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract Receivables [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CMGAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">C M G acquisition.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CMGAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">C M G acquisition [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CMGAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">C M G acquisition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromSaleOfBilledContractReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Proceeds from sale of billed contract receivables.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromSaleOfBilledContractReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds From Sale Of Billed Contract Receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_ProceedsFromSaleOfBilledContractReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from sale of billed contract receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Facility [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Credit Facility</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Issuance of shares pursuant to vesting of restricted stock units (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Issuance of shares pursuant to employee stock purchase plan and vesting of restricted stock units (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash Flows from Financing Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Dilutive effect of stock awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares Outstanding Reconciliation [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted-average Shares:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Derivative Instruments and Hedging Activities Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Intangible Assets, Net (Excluding Goodwill)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other intangible assets, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Intangible Assets, Net (Excluding Goodwill), Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Measurement Frequency [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Measurement Frequency</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Recognized Amount [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CMYAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">CMY acquisition.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CMYAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">C M Y acquisition [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_CMYAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">CMY Acquisition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other comprehensive income (loss)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total current period other comprehensive (loss) income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Other comprehensive (loss) income, net of tax</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueInputsLevel3Member_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value, Inputs, Level 3 [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueInputsLevel3Member_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Level 3</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_PaymentsForShareRepurchasesValue_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Payments for share repurchases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_PaymentsForShareRepurchasesValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Payments for share repurchases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_PaymentsForShareRepurchasesValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments For Share Repurchases Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_PaymentsForShareRepurchasesValue_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Payments for share repurchases value.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Events [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Subsequent Events</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Payable, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounts payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Accounts Payable, Current, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_HealthAndSocialProgramsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Health and social programs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_HealthAndSocialProgramsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Health And Social Programs [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_HealthAndSocialProgramsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Health and Social Programs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Allowance for expected credit losses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Change in Fair Value of Interest Rate Hedge Agreements and Other Adjustments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Accumulated other comprehensive income loss cumulative changes in fair value on derivative designated from cash flow Hedges effect net of tax.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accumulated Other Comprehensive Income Loss Cumulative Changes In Fair Value On Derivative Designated From Cash Flow Hedges Effect Net Of Tax [Member]</link:label>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:to="us-gaap_LiabilitiesFairValueDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateDuringPeriod" xlink:to="us-gaap_DebtInstrumentInterestRateDuringPeriod_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SaleOfReceivablesLiabilities" xlink:to="icfi_SaleOfReceivablesLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_IntangibleAssetsNetExcludingGoodwillMember" xlink:to="icfi_IntangibleAssetsNetExcludingGoodwillMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameDomain" xlink:to="us-gaap_PlanNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRepurchaseOfEquity" xlink:to="us-gaap_PaymentsForRepurchaseOfEquity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligation" xlink:to="us-gaap_RevenueRemainingPerformanceObligation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock" xlink:to="icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NumberOfOperatingSegments" xlink:to="us-gaap_NumberOfOperatingSegments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity" xlink:to="us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember" xlink:to="icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations" xlink:to="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNoncashIncomeExpense" xlink:to="us-gaap_OtherNoncashIncomeExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" xlink:to="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" xlink:to="us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:to="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel2Member" xlink:to="us-gaap_FairValueInputsLevel2Member_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="icfi_SignificantSegmentExpensesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="us-gaap_LongtermDebtTypeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_ESACAcquisitionMember" xlink:to="icfi_ESACAcquisitionMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:to="us-gaap_RevenueRemainingPerformanceObligationPercentage_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers" xlink:to="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingOtherItemAmount" xlink:to="us-gaap_SegmentReportingOtherItemAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AccruedTaxesAndInsurancePremiumsCurrent" xlink:to="icfi_AccruedTaxesAndInsurancePremiumsCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtCurrent" xlink:to="us-gaap_LongTermDebtCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestRateSwapMember" xlink:to="us-gaap_InterestRateSwapMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:to="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromBankDebt" xlink:to="us-gaap_ProceedsFromBankDebt_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductOrServiceAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DelayedDrawTermLoanMember" xlink:to="us-gaap_DelayedDrawTermLoanMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockTextBlock" xlink:to="us-gaap_TreasuryStockTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodShares" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_ScheduleOfGoodwillTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireProductiveAssets" xlink:to="us-gaap_PaymentsToAcquireProductiveAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendPayableDateToBePaidDayMonthAndYear" xlink:to="us-gaap_DividendPayableDateToBePaidDayMonthAndYear_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_ClassOfTreasuryStockTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpenseNonoperating" xlink:to="us-gaap_InterestExpenseNonoperating_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription" xlink:to="us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentCarryingAmount" xlink:to="us-gaap_DebtInstrumentCarryingAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsPayableDateDeclaredDayMonthAndYear" xlink:to="us-gaap_DividendsPayableDateDeclaredDayMonthAndYear_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:to="us-gaap_ProceedsFromDivestitureOfBusinesses_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:to="icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNoncurrentAssetsMember" xlink:to="us-gaap_OtherNoncurrentAssetsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseRemainingLeaseTerm" xlink:to="us-gaap_LesseeOperatingLeaseRemainingLeaseTerm_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AccruedOtherFutureLeaseRelatedExpenses" xlink:to="icfi_AccruedOtherFutureLeaseRelatedExpenses_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock" xlink:to="us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts" xlink:to="icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember" xlink:to="icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent" xlink:to="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_ConcentrationRiskTypeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_EquityClassOfTreasuryStockLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingenciesTable" xlink:to="us-gaap_LossContingenciesTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerConcentrationRiskMember" xlink:to="us-gaap_CustomerConcentrationRiskMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsPayableDateOfRecordDayMonthAndYear" xlink:to="us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfAccountsReceivableSecuritization" xlink:to="us-gaap_RepaymentsOfAccountsReceivableSecuritization_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonShares" xlink:to="us-gaap_TreasuryStockCommonShares_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock" xlink:to="icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_SubsequentEventLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent" xlink:to="icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FixedPriceContractMember" xlink:to="us-gaap_FixedPriceContractMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeFinanceLeaseOptionToExtend" xlink:to="us-gaap_LesseeFinanceLeaseOptionToExtend_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription" xlink:to="us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseOptionToExtend" xlink:to="us-gaap_LesseeOperatingLeaseOptionToExtend_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_TermLoanMember" xlink:to="icfi_TermLoanMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpensesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsLineItems" xlink:to="icfi_BasisOfPresentationAndNatureOfOperationsLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:to="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount" xlink:to="us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SaleOfBilledReceivables" xlink:to="icfi_SaleOfBilledReceivables_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfDividendsCommonStock" xlink:to="us-gaap_PaymentsOfDividendsCommonStock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScenarioPlanMember" xlink:to="us-gaap_ScenarioPlanMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductsAndServicesDomain" xlink:to="srt_ProductsAndServicesDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepositLiabilityCurrent" xlink:to="us-gaap_DepositLiabilityCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementsRecurringMember" xlink:to="us-gaap_FairValueMeasurementsRecurringMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VestingAxis" xlink:to="us-gaap_VestingAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedTranslationAdjustmentMember" xlink:to="us-gaap_AccumulatedTranslationAdjustmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditDerivativesContractTypeDomain" xlink:to="us-gaap_CreditDerivativesContractTypeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:to="us-gaap_AccountsNotesAndLoansReceivableLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CapitalizedComputerSoftwareNet" xlink:to="us-gaap_CapitalizedComputerSoftwareNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_CMYSolutionsLLCMember" xlink:to="icfi_CMYSolutionsLLCMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringCosts" xlink:to="us-gaap_RestructuringCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember" xlink:to="icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SecurityAndOtherCivilianAndCommercialMember" xlink:to="icfi_SecurityAndOtherCivilianAndCommercialMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_HedgingDesignationDomain" xlink:to="us-gaap_HedgingDesignationDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:to="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" xlink:to="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_CostBasedContractMember" xlink:to="icfi_CostBasedContractMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentNameDomain" xlink:to="us-gaap_DebtInstrumentNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent" xlink:to="icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_ReceivablesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeLeaseDescriptionTable" xlink:to="us-gaap_LesseeLeaseDescriptionTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_CreativeSystemsAndConsultingAcquisitionMember" xlink:to="icfi_CreativeSystemsAndConsultingAcquisitionMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_VariableRateDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" xlink:to="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeMember" xlink:to="srt_RangeMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonMember" xlink:to="us-gaap_TreasuryStockCommonMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_ProfitLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome" xlink:to="icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember" xlink:to="icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_CompanyOwnedLifeInsurancePoliciesMember" xlink:to="icfi_CompanyOwnedLifeInsurancePoliciesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SegmentDepreciationAndAmortizationMember" xlink:to="icfi_SegmentDepreciationAndAmortizationMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AugustThirtyFirstTwoThousandTwentyThreeMember" xlink:to="icfi_AugustThirtyFirstTwoThousandTwentyThreeMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_PayablesAndAccrualsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedCashCurrent" xlink:to="us-gaap_RestrictedCashCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFinancingReceivablesPastDueTable" xlink:to="us-gaap_ScheduleOfFinancingReceivablesPastDueTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="icfi_RevenueFromContractWithCustomerLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SeveranceCosts1" xlink:to="us-gaap_SeveranceCosts1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AppliedEnergyGroupIncMember" xlink:to="icfi_AppliedEnergyGroupIncMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_OmnibusPlanMember" xlink:to="icfi_OmnibusPlanMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestIncomeExpenseNet" xlink:to="us-gaap_InterestIncomeExpenseNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits" xlink:to="icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_FinanceLeasesTerminationLeaseTerm" xlink:to="icfi_FinanceLeasesTerminationLeaseTerm_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities" xlink:to="icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_RepaymentsOfRestrictedContractFunds" xlink:to="icfi_RepaymentsOfRestrictedContractFunds_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentOfLeasehold" xlink:to="us-gaap_ImpairmentOfLeasehold_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfBusiness" xlink:to="us-gaap_GainLossOnSaleOfBusiness_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeTable" xlink:to="us-gaap_DerivativeTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_GoodwillLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_USStateAndLocalGovernmentMember" xlink:to="icfi_USStateAndLocalGovernmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsFairValueDisclosure" xlink:to="us-gaap_AssetsFairValueDisclosure_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock" xlink:to="icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeLineItems" xlink:to="us-gaap_DerivativeLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_NumberOfOfficeFacilitiesCeasedUse" xlink:to="icfi_NumberOfOfficeFacilitiesCeasedUse_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted" xlink:to="icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_CashSettledRSUsMember" xlink:to="icfi_CashSettledRSUsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_EquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_StatementBusinessSegmentsAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsFairValueDisclosureAbstract" xlink:to="us-gaap_AssetsFairValueDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_InConnectionWithVestingOfRestrictedStockUnitsMember" xlink:to="icfi_InConnectionWithVestingOfRestrictedStockUnitsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_HedgingRelationshipDomain" xlink:to="us-gaap_HedgingRelationshipDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditDerivativesByContractTypeAxis" xlink:to="us-gaap_CreditDerivativesByContractTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleAndCollectionOfReceivables" xlink:to="us-gaap_ProceedsFromSaleAndCollectionOfReceivables_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_CreditFacilityMember" xlink:to="icfi_CreditFacilityMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock" xlink:to="icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_NonemployeeDirectOrAwardsMember" xlink:to="icfi_NonemployeeDirectOrAwardsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration" xlink:to="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_USFederalGovernmentMember" xlink:to="icfi_USFederalGovernmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueDisclosuresAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromAccountsReceivableSecuritization" xlink:to="us-gaap_ProceedsFromAccountsReceivableSecuritization_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet" xlink:to="us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:to="us-gaap_BusinessAcquisitionProFormaInformationTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition" xlink:to="icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_CommercialMember" xlink:to="icfi_CommercialMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock" xlink:to="us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeLeaseDescriptionLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringCostsAbstract" xlink:to="us-gaap_RestructuringCostsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForOtherCreditLosses" xlink:to="us-gaap_ProvisionForOtherCreditLosses_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_BalanceSheetLocationDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNoncurrentLiabilitiesMember" xlink:to="us-gaap_OtherNoncurrentLiabilitiesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TrademarksAndTradeNamesMember" xlink:to="us-gaap_TrademarksAndTradeNamesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseCostTableTextBlock" xlink:to="us-gaap_LeaseCostTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtNoncurrent" xlink:to="us-gaap_LongTermDebtNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfGoodwillTextBlock" xlink:to="us-gaap_ScheduleOfGoodwillTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" xlink:to="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" xlink:to="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueAbstract" xlink:to="us-gaap_DisaggregationOfRevenueAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeFinanceLeaseOptionToTerminate" xlink:to="us-gaap_LesseeFinanceLeaseOptionToTerminate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventTypeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:to="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SeveranceChargeExpectedToBePaid" xlink:to="icfi_SeveranceChargeExpectedToBePaid_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfTreasuryStockByClassTextBlock" xlink:to="us-gaap_ScheduleOfTreasuryStockByClassTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_RestrictedContractFunds" xlink:to="icfi_RestrictedContractFunds_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TimeAndMaterialsContractMember" xlink:to="us-gaap_TimeAndMaterialsContractMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:to="us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockDividendsPerShareDeclared" xlink:to="us-gaap_CommonStockDividendsPerShareDeclared_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DesignatedAsHedgingInstrumentMember" xlink:to="us-gaap_DesignatedAsHedgingInstrumentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeFinanceLeaseRenewalTerm1" xlink:to="us-gaap_LesseeFinanceLeaseRenewalTerm1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodValue" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_CreditFacilityDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationAndAmortization" xlink:to="us-gaap_DepreciationAndAmortization_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromPaymentsForOtherFinancingActivities" xlink:to="us-gaap_ProceedsFromPaymentsForOtherFinancingActivities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_StockholdersEquityNoteAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="us-gaap_LiabilitiesNoncurrentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_TwoHundredMillionShareRepurchaseProgramMember" xlink:to="icfi_TwoHundredMillionShareRepurchaseProgramMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillDisclosureTextBlock" xlink:to="us-gaap_GoodwillDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription" xlink:to="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsCommonStockCash" xlink:to="us-gaap_DividendsCommonStockCash_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationsAbstract" xlink:to="us-gaap_BusinessCombinationsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesReceivable" xlink:to="us-gaap_IncomeTaxesReceivable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_InitialPerformanceVestingPeriodMember" xlink:to="icfi_InitialPerformanceVestingPeriodMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromOtherShortTermDebt" xlink:to="us-gaap_ProceedsFromOtherShortTermDebt_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeInstrumentRiskAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireBusinessesGross" xlink:to="us-gaap_PaymentsToAcquireBusinessesGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedStockUnitsRSUMember" xlink:to="us-gaap_RestrictedStockUnitsRSUMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableSale" xlink:to="us-gaap_AccountsReceivableSale_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsDisclosureTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_BlantonAndAssociatesMember" xlink:to="icfi_BlantonAndAssociatesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AmortizationOfIntangibleAsset" xlink:to="icfi_AmortizationOfIntangibleAsset_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:to="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_ProceedsFromSaleOfBilledReceivables" xlink:to="icfi_ProceedsFromSaleOfBilledReceivables_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LeasesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TechnologyBasedIntangibleAssetsMember" xlink:to="us-gaap_TechnologyBasedIntangibleAssetsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UseOfEstimates" xlink:to="us-gaap_UseOfEstimates_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsPayableAmountPerShare" xlink:to="us-gaap_DividendsPayableAmountPerShare_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_StatementScenarioAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_RevenueFromContractWithCustomerTable" xlink:to="icfi_RevenueFromContractWithCustomerTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_PaymentsForShareRepurchasesShares" xlink:to="icfi_PaymentsForShareRepurchasesShares_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashFlowHedgingMember" xlink:to="us-gaap_CashFlowHedgingMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditMember" xlink:to="us-gaap_LineOfCreditMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeMaturityDates" xlink:to="us-gaap_DerivativeMaturityDates_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueDisclosuresTextBlock" xlink:to="us-gaap_FairValueDisclosuresTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventMember" xlink:to="us-gaap_SubsequentEventMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:to="us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancialLiabilitiesFairValueDisclosure" xlink:to="us-gaap_FinancialLiabilitiesFairValueDisclosure_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:to="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReconciliationFromSegmentTotalsToConsolidatedAbstract" xlink:to="us-gaap_ReconciliationFromSegmentTotalsToConsolidatedAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_NonEmployeeDirectorStockAwardsMember" xlink:to="icfi_NonEmployeeDirectorStockAwardsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:to="us-gaap_CustomerRelatedIntangibleAssetsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeNotionalAmount" xlink:to="us-gaap_DerivativeNotionalAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte" xlink:to="icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_DeferredCompensationPlanLiabilitiesMember" xlink:to="icfi_DeferredCompensationPlanLiabilitiesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInReceivables" xlink:to="us-gaap_IncreaseDecreaseInReceivables_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:to="us-gaap_GoodwillForeignCurrencyTranslationGainLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember" xlink:to="icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_ScheduleOfAcquisitionAndDivestitureTable" xlink:to="icfi_ScheduleOfAcquisitionAndDivestitureTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_LettersOfCreditGuarantees" xlink:to="icfi_LettersOfCreditGuarantees_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NumberOfReportableSegments" xlink:to="us-gaap_NumberOfReportableSegments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VestingDomain" xlink:to="us-gaap_VestingDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandbyLettersOfCreditMember" xlink:to="us-gaap_StandbyLettersOfCreditMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LossContingenciesLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SemanticBitsLLCMember" xlink:to="icfi_SemanticBitsLLCMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseOptionToTerminate" xlink:to="us-gaap_LesseeOperatingLeaseOptionToTerminate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_RestructuringAndRelatedCostLineItemsLineItems" xlink:to="icfi_RestructuringAndRelatedCostLineItemsLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="srt_ShareRepurchaseProgramDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPayableCurrent" xlink:to="us-gaap_InterestPayableCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:to="us-gaap_ScheduleOfDebtInstrumentsTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers" xlink:to="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel1Member" xlink:to="us-gaap_FairValueInputsLevel1Member_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_FinancialInstrumentAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:to="us-gaap_ComprehensiveIncomeNoteTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_NumberOfOpenStandbyLettersOfCredit" xlink:to="icfi_NumberOfOpenStandbyLettersOfCredit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:to="us-gaap_GoodwillPurchaseAccountingAdjustments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_EmployeeStockAwardsMember" xlink:to="icfi_EmployeeStockAwardsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:to="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember" xlink:to="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="icfi_AcquisitionAndDivestitureLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfOtherShortTermDebt" xlink:to="us-gaap_RepaymentsOfOtherShortTermDebt_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_SubsequentEventTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_JuneTwentySevenTwoThousandTwentyEightMember" xlink:to="icfi_JuneTwentySevenTwoThousandTwentyEightMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetNetCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_FebruaryTwentyEightTwoThousandTwentyEightMember" xlink:to="icfi_FebruaryTwentyEightTwoThousandTwentyEightMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsAbstract" xlink:to="us-gaap_OtherAssetsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedProfessionalFeesCurrent" xlink:to="us-gaap_AccruedProfessionalFeesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_ProceedsFromRestrictedContractFunds" xlink:to="icfi_ProceedsFromRestrictedContractFunds_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" xlink:to="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsAbstract" xlink:to="us-gaap_SubsequentEventsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember" xlink:to="icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockValue" xlink:to="us-gaap_PreferredStockValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfLongTermDebt" xlink:to="us-gaap_RepaymentsOfLongTermDebt_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_ContractReceivablesDomain" xlink:to="icfi_ContractReceivablesDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsPayableCurrent" xlink:to="us-gaap_DividendsPayableCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedCashAndCashEquivalentsCurrentAbstract" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCurrentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:to="us-gaap_PriorPeriodReclassificationAdjustmentDescription_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LettersOfCreditOutstandingAmount" xlink:to="us-gaap_LettersOfCreditOutstandingAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_DerivativeContractTypeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesAndOtherLiabilities" xlink:to="us-gaap_AccruedLiabilitiesAndOtherLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_CommercialMarketingMember" xlink:to="icfi_CommercialMarketingMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_DirectLaborAndRelatedFringeCosts" xlink:to="icfi_DirectLaborAndRelatedFringeCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseImpairmentLoss" xlink:to="us-gaap_OperatingLeaseImpairmentLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesIssued" xlink:to="us-gaap_SharesIssued_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FederalFundsEffectiveSwapRateMember" xlink:to="us-gaap_FederalFundsEffectiveSwapRateMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_USStateAndInternationalGovernmentMember" xlink:to="icfi_USStateAndInternationalGovernmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeFixedInterestRate" xlink:to="us-gaap_DerivativeFixedInterestRate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DevelopedTechnologyRightsMember" xlink:to="us-gaap_DevelopedTechnologyRightsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:to="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StockRepurchaseProgramAuthorizedAmount1" xlink:to="srt_StockRepurchaseProgramAuthorizedAmount1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" xlink:to="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_LesseeOperatingLeaseTerminationTerm" xlink:to="icfi_LesseeOperatingLeaseTerminationTerm_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit" xlink:to="us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_IncomeStatementLocationDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_VestingOfRestrictedStockUnitsMember" xlink:to="icfi_VestingOfRestrictedStockUnitsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentDomain" xlink:to="us-gaap_SegmentDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PerformanceSharesMember" xlink:to="us-gaap_PerformanceSharesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems" xlink:to="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsTable" xlink:to="icfi_BasisOfPresentationAndNatureOfOperationsTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:to="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScenarioUnspecifiedDomain" xlink:to="srt_ScenarioUnspecifiedDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerRelationshipsMember" xlink:to="us-gaap_CustomerRelationshipsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityCurrent" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AccruedSubcontractorAndOtherDirectCosts" xlink:to="icfi_AccruedSubcontractorAndOtherDirectCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerMember" xlink:to="us-gaap_RevenueFromContractWithCustomerMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_DelayedDrawTermLoanFacilityMember" xlink:to="icfi_DelayedDrawTermLoanFacilityMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByMeasurementFrequencyAxis" xlink:to="us-gaap_FairValueByMeasurementFrequencyAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_InternationalGovernmentMember" xlink:to="icfi_InternationalGovernmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaid" xlink:to="us-gaap_IncomeTaxesPaid_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:to="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SecuredOvernightFinancingRateMember" xlink:to="icfi_SecuredOvernightFinancingRateMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:to="us-gaap_LesseeOperatingLeaseRenewalTerm_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" xlink:to="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_SubcontractorsAndOtherDirectCosts" xlink:to="icfi_SubcontractorsAndOtherDirectCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_SegmentReportingInformationLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_MillionShareRepurchaseProgramMember" xlink:to="icfi_MillionShareRepurchaseProgramMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BilledContractReceivables" xlink:to="us-gaap_BilledContractReceivables_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_ContractReceivablesAxis" xlink:to="icfi_ContractReceivablesAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_CMGAcquisitionMember" xlink:to="icfi_CMGAcquisitionMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_ProceedsFromSaleOfBilledContractReceivables" xlink:to="icfi_ProceedsFromSaleOfBilledContractReceivables_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:to="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementFrequencyDomain" xlink:to="us-gaap_FairValueMeasurementFrequencyDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract" xlink:to="us-gaap_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_CMYAcquisitionMember" xlink:to="icfi_CMYAcquisitionMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel3Member" xlink:to="us-gaap_FairValueInputsLevel3Member_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_PaymentsForShareRepurchasesValue" xlink:to="icfi_PaymentsForShareRepurchasesValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsTextBlock" xlink:to="us-gaap_SubsequentEventsTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_HealthAndSocialProgramsMember" xlink:to="icfi_HealthAndSocialProgramsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember" xlink:to="icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember_lbl"/>
        </link:labelLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityRegistrantName" order="49.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCentralIndexKey" order="50.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_TradingSymbol" order="51.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_SecurityExchangeName" order="52.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_CurrentFiscalYearEndDate" order="53.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityFilerCategory" order="54.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntitySmallBusiness" order="55.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityEmergingGrowthCompany" order="56.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCommonStockSharesOutstanding" order="57.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentType" order="58.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentPeriodEndDate" order="59.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentFiscalYearFocus" order="60.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentFiscalPeriodFocus" order="61.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_AmendmentFlag" order="62.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCurrentReportingStatus" order="63.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityShellCompany" order="64.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityFileNumber" order="65.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityTaxIdentificationNumber" order="66.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityIncorporationStateCountryCode" order="67.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressAddressLine1" order="68.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressCityOrTown" order="69.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressStateOrProvince" order="70.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressPostalZipCode" order="71.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_CityAreaCode" order="72.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_LocalPhoneNumber" order="73.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_Security12bTitle" order="74.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityInteractiveDataCurrent" order="75.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentQuarterlyReport" order="76.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentTransitionReport" order="77.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
          <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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent"/>
          <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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsAbstract" xlink:label="us-gaap_OtherAssetsAbstract"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashCurrent" xlink:label="us-gaap_RestrictedCashCurrent"/>
          <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: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: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: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: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: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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="us-gaap_IncomeTaxesReceivable"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedSubcontractorAndOtherDirectCosts" xlink:label="icfi_AccruedSubcontractorAndOtherDirectCosts"/>
          <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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesAndOtherLiabilities" xlink:label="us-gaap_AccruedLiabilitiesAndOtherLiabilities"/>
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableCurrent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="us-gaap_LongTermDebtNoncurrent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_PreferredStockValue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AssetsAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsAbstract" xlink:to="us-gaap_Goodwill" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsCurrentAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_RestrictedCashCurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesNoncurrentAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsAbstract" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_Liabilities" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsAbstract" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_OtherAssetsAbstract" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsAbstract" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_Assets" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_TreasuryStockValue" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsAbstract" xlink:to="us-gaap_OtherAssetsNoncurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_IncomeTaxesReceivable" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="icfi_AccruedSubcontractorAndOtherDirectCosts" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesAndOtherLiabilities" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" xlink:title="presentationLink" xlink:type="extended">
          <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: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: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: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: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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="us-gaap_TreasuryStockCommonShares"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockSharesAuthorized" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockSharesIssued" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesAuthorized" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesIssued" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesOutstanding" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_TreasuryStockCommonShares" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
          <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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
          <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: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: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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AmortizationOfIntangibleAsset" xlink:label="icfi_AmortizationOfIntangibleAsset"/>
          <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: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: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: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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockDividendsPerShareDeclared" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
          <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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_CostOfGoodsAndServicesSold" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_DepreciationAndAmortization" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OperatingExpensesAbstract" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="icfi_AmortizationOfIntangibleAsset" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OperatingIncomeLoss" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpenses" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_InterestIncomeExpenseNet" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_NetIncomeLoss" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_EarningsPerShareAbstract" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_CommonStockDividendsPerShareDeclared" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:title="presentationLink" xlink:type="extended">
          <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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <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: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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="us-gaap_TreasuryStockCommonShares"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="us-gaap_TreasuryStockCommonMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
          <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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:label="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_PaymentsForShareRepurchasesValue" xlink:label="icfi_PaymentsForShareRepurchasesValue"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_PaymentsForShareRepurchasesShares" xlink:label="icfi_PaymentsForShareRepurchasesShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsCommonStockCash" xlink:label="us-gaap_DividendsCommonStockCash"/>
          <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_13"/>
          <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_14"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="us-gaap_TreasuryStockCommonShares_15"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesIssued" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockCommonShares" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_TreasuryStockCommonMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="icfi_PaymentsForShareRepurchasesValue" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="icfi_PaymentsForShareRepurchasesShares" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DividendsCommonStockCash" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity_13" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesIssued_14" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockCommonShares_15" order="15" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" xlink:label="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireProductiveAssets" xlink:label="us-gaap_PaymentsToAcquireProductiveAssets"/>
          <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: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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromBankDebt" xlink:label="us-gaap_ProceedsFromBankDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInReceivables" xlink:label="us-gaap_IncreaseDecreaseInReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinesses"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaid" xlink:label="us-gaap_IncomeTaxesPaid"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits" xlink:label="icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
          <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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromOtherShortTermDebt" xlink:label="us-gaap_ProceedsFromOtherShortTermDebt"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities" xlink:label="icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfOtherShortTermDebt" xlink:label="us-gaap_RepaymentsOfOtherShortTermDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnSaleOfBusiness" xlink:label="us-gaap_GainLossOnSaleOfBusiness"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ProceedsFromRestrictedContractFunds" xlink:label="icfi_ProceedsFromRestrictedContractFunds"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RepaymentsOfRestrictedContractFunds" xlink:label="icfi_RepaymentsOfRestrictedContractFunds"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts" xlink:label="icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_6"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="us-gaap_PaymentsOfDividendsCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRepurchaseOfEquity" xlink:label="us-gaap_PaymentsForRepurchaseOfEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromPaymentsForOtherFinancingActivities" xlink:label="us-gaap_ProceedsFromPaymentsForOtherFinancingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities"/>
          <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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ProfitLoss" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireProductiveAssets" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_InterestPaidNet" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ProvisionForOtherCreditLosses" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromBankDebt" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInReceivables" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromDivestitureOfBusinesses" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_IncomeTaxesPaid" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfLongTermDebt" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromOtherShortTermDebt" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfOtherShortTermDebt" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnSaleOfBusiness" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="icfi_ProceedsFromRestrictedContractFunds" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_OtherNoncashIncomeExpense" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="icfi_RepaymentsOfRestrictedContractFunds" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_6" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfDividendsCommonStock" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsForRepurchaseOfEquity" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromPaymentsForOtherFinancingActivities" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentation1" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCash" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="us-gaap_CashAndCashEquivalentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsDisclosureTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsAbstract" xlink:to="us-gaap_CashAndCashEquivalentsDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNet" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:label="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwill" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillDisclosureTextBlock" xlink:label="us-gaap_GoodwillDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeases" xlink:title="presentationLink" xlink:type="extended">
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilities" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDebt3" xlink:title="presentationLink" xlink:type="extended">
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognition" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivities1" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureIncomeTaxes" xlink:title="presentationLink" xlink:type="extended">
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccumulatedOtherComprehensiveLoss" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:to="us-gaap_ComprehensiveIncomeNoteTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquity" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteAbstract" xlink:label="us-gaap_StockholdersEquityNoteAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensation" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestiture" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="us-gaap_BusinessCombinationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock" xlink:label="us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessCombinationsAbstract" xlink:to="us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShare" xlink:title="presentationLink" xlink:type="extended">
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureShareRepurchaseProgram" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockTextBlock" xlink:label="us-gaap_TreasuryStockTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_TreasuryStockTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValue" xlink:title="presentationLink" xlink:type="extended">
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueDisclosuresTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingencies" xlink:title="presentationLink" xlink:type="extended">
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformation" xlink:title="presentationLink" xlink:type="extended">
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEvents" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventsAbstract" xlink:to="us-gaap_SubsequentEventsTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignment" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestructuringCostsAbstract" xlink:label="us-gaap_RestructuringCostsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:label="us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostsAbstract" xlink:to="us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationPolicies" xlink:title="presentationLink" xlink:type="extended">
          <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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_UseOfEstimates" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_PriorPeriodReclassificationAdjustmentDescription" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashAndCashEquivalentsCurrentAbstract" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock" xlink:label="us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestrictedCashAndCashEquivalentsCurrentAbstract" xlink:to="us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock" xlink:label="icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock" xlink:label="icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock" xlink:label="icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte" xlink:label="icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillTables" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="us-gaap_ScheduleOfGoodwillTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_ScheduleOfGoodwillTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesTables" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="us-gaap_LeaseCostTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:label="icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock" xlink:label="icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LeaseCostTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables" xlink:title="presentationLink" xlink:type="extended">
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtTables" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock"/>
          <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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_ScheduleOfDebtInstrumentsTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesTables" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquityTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteAbstract" xlink:label="us-gaap_StockholdersEquityNoteAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfTreasuryStockByClassTextBlock" xlink:label="us-gaap_ScheduleOfTreasuryStockByClassTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_ScheduleOfTreasuryStockByClassTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract" xlink:label="us-gaap_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract" xlink:to="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="us-gaap_BusinessCombinationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="us-gaap_BusinessAcquisitionProFormaInformationTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessCombinationsAbstract" xlink:to="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessCombinationsAbstract" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessCombinationsAbstract" xlink:to="us-gaap_BusinessAcquisitionProFormaInformationTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareTables" xlink:title="presentationLink" xlink:type="extended">
          <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: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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueTables" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationTables" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BasisOfPresentationAndNatureOfOperationsLineItems" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedComputerSoftwareNet" xlink:label="us-gaap_CapitalizedComputerSoftwareNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IntangibleAssetsNetExcludingGoodwillMember" xlink:label="icfi_IntangibleAssetsNetExcludingGoodwillMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BasisOfPresentationAndNatureOfOperationsTable" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsLineItems" xlink:to="us-gaap_CapitalizedComputerSoftwareNet" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="icfi_IntangibleAssetsNetExcludingGoodwillMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="icfi_BasisOfPresentationAndNatureOfOperationsTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsTable" xlink:to="us-gaap_BalanceSheetLocationAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsLineItems" xlink:to="us-gaap_NumberOfOperatingSegments" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsTable" xlink:to="icfi_BasisOfPresentationAndNatureOfOperationsLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsLineItems" xlink:to="us-gaap_NumberOfReportableSegments" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="us-gaap_CashAndCashEquivalentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashCurrent" xlink:label="us-gaap_RestrictedCashCurrent"/>
          <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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsAbstract" xlink:to="us-gaap_RestrictedCashCurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BilledContractReceivables" xlink:label="us-gaap_BilledContractReceivables"/>
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_BilledContractReceivables" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom2" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers" xlink:label="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers" xlink:label="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableSale" xlink:label="us-gaap_AccountsReceivableSale"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromAccountsReceivableSecuritization" xlink:label="us-gaap_ProceedsFromAccountsReceivableSecuritization"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers" xlink:label="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers_4"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers" xlink:label="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers_5"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_AccountsReceivableSale" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_ProceedsFromAccountsReceivableSecuritization" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers_4" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers_5" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom3" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ProceedsFromSaleOfBilledReceivables" xlink:label="icfi_ProceedsFromSaleOfBilledReceivables"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ProceedsFromSaleOfBilledContractReceivables" xlink:label="icfi_ProceedsFromSaleOfBilledContractReceivables"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers" xlink:label="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_ProceedsFromSaleOfBilledReceivables" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_ProceedsFromSaleOfBilledContractReceivables" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud1" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SaleOfBilledReceivables" xlink:label="icfi_SaleOfBilledReceivables"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SaleOfReceivablesLiabilities" xlink:label="icfi_SaleOfReceivablesLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromAccountsReceivableSecuritization" xlink:label="us-gaap_ProceedsFromAccountsReceivableSecuritization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfAccountsReceivableSecuritization" xlink:label="us-gaap_RepaymentsOfAccountsReceivableSecuritization"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SaleOfReceivablesLiabilities" xlink:label="icfi_SaleOfReceivablesLiabilities_4"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SaleOfBilledReceivables" xlink:label="icfi_SaleOfBilledReceivables_5"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_SaleOfBilledReceivables" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_SaleOfReceivablesLiabilities" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_ProceedsFromAccountsReceivableSecuritization" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_RepaymentsOfAccountsReceivableSecuritization" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_SaleOfReceivablesLiabilities_4" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="icfi_SaleOfBilledReceivables_5" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:label="us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted" xlink:label="icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember" xlink:label="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SaleOfReceivablesLiabilities" xlink:label="icfi_SaleOfReceivablesLiabilities"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:to="icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:to="us-gaap_BalanceSheetLocationAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:to="icfi_SaleOfReceivablesLiabilities" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:to="us-gaap_AccountsNotesAndLoansReceivableLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFinancingReceivablesPastDueTable" xlink:label="us-gaap_ScheduleOfFinancingReceivablesPastDueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractReceivablesAxis" xlink:label="icfi_ContractReceivablesAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractReceivablesDomain" xlink:label="icfi_ContractReceivablesDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember" xlink:label="icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems" xlink:label="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleAndCollectionOfReceivables" xlink:label="us-gaap_ProceedsFromSaleAndCollectionOfReceivables"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" xlink:label="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_ScheduleOfFinancingReceivablesPastDueTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfFinancingReceivablesPastDueTable" xlink:to="icfi_ContractReceivablesAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_ContractReceivablesDomain" xlink:to="icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems" xlink:to="us-gaap_ProceedsFromSaleAndCollectionOfReceivables" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_ContractReceivablesAxis" xlink:to="icfi_ContractReceivablesDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfFinancingReceivablesPastDueTable" xlink:to="srt_RangeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems" xlink:to="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfFinancingReceivablesPastDueTable" xlink:to="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="us-gaap_ScheduleOfGoodwillTable"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillLineItems" xlink:label="us-gaap_GoodwillLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:label="us-gaap_GoodwillPurchaseAccountingAdjustments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ESACAcquisitionMember" xlink:label="icfi_ESACAcquisitionMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit" xlink:label="us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CreativeSystemsAndConsultingAcquisitionMember" xlink:label="icfi_CreativeSystemsAndConsultingAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SemanticBitsLLCMember" xlink:label="icfi_SemanticBitsLLCMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BlantonAndAssociatesMember" xlink:label="icfi_BlantonAndAssociatesMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CMYAcquisitionMember" xlink:label="icfi_CMYAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CMGAcquisitionMember" xlink:label="icfi_CMGAcquisitionMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_BusinessAcquisitionAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_GoodwillPurchaseAccountingAdjustments" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_ESACAcquisitionMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_ScheduleOfGoodwillTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_GoodwillLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_CreativeSystemsAndConsultingAcquisitionMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_GoodwillForeignCurrencyTranslationGainLoss" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_SemanticBitsLLCMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_BlantonAndAssociatesMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_CMYAcquisitionMember" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_CMGAcquisitionMember" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionTable" xlink:label="us-gaap_LesseeLeaseDescriptionTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionLineItems" xlink:label="us-gaap_LesseeLeaseDescriptionLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseRemainingLeaseTerm" xlink:label="us-gaap_LesseeOperatingLeaseRemainingLeaseTerm"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" xlink:label="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseRenewalTerm1" xlink:label="us-gaap_LesseeFinanceLeaseRenewalTerm1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseOptionToExtend" xlink:label="us-gaap_LesseeOperatingLeaseOptionToExtend"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseOptionToExtend" xlink:label="us-gaap_LesseeFinanceLeaseOptionToExtend"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_LesseeOperatingLeaseTerminationTerm" xlink:label="icfi_LesseeOperatingLeaseTerminationTerm"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_FinanceLeasesTerminationLeaseTerm" xlink:label="icfi_FinanceLeasesTerminationLeaseTerm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseOptionToTerminate" xlink:label="us-gaap_LesseeOperatingLeaseOptionToTerminate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseOptionToTerminate" xlink:label="us-gaap_LesseeFinanceLeaseOptionToTerminate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription" xlink:label="us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription" xlink:label="us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NumberOfOfficeFacilitiesCeasedUse" xlink:label="icfi_NumberOfOfficeFacilitiesCeasedUse"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseImpairmentLoss" xlink:label="us-gaap_OperatingLeaseImpairmentLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ImpairmentOfLeasehold" xlink:label="us-gaap_ImpairmentOfLeasehold"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedOtherFutureLeaseRelatedExpenses" xlink:label="icfi_AccruedOtherFutureLeaseRelatedExpenses"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionTable" xlink:to="srt_RangeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseRemainingLeaseTerm" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeLeaseDescriptionTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionTable" xlink:to="us-gaap_LesseeLeaseDescriptionLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseRenewalTerm" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeFinanceLeaseRenewalTerm1" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseOptionToExtend" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeFinanceLeaseOptionToExtend" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="icfi_LesseeOperatingLeaseTerminationTerm" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="icfi_FinanceLeasesTerminationLeaseTerm" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseOptionToTerminate" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeFinanceLeaseOptionToTerminate" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="icfi_NumberOfOfficeFacilitiesCeasedUse" order="15" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_OperatingLeaseImpairmentLoss" order="16" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_ImpairmentOfLeasehold" order="17" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="icfi_AccruedOtherFutureLeaseRelatedExpenses" order="18" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive"/>
          <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: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: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: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: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: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: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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive"/>
          <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: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: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: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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_OperatingLeaseLiability" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" order="15" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" order="16" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue" order="17" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" order="18" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_FinanceLeaseLiability" order="19" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent" order="20" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent" order="21" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepositLiabilityCurrent" xlink:label="us-gaap_DepositLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RestrictedContractFunds" xlink:label="icfi_RestrictedContractFunds"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent" xlink:label="icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedTaxesAndInsurancePremiumsCurrent" xlink:label="icfi_AccruedTaxesAndInsurancePremiumsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent" xlink:label="icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPayableCurrent" xlink:label="us-gaap_InterestPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="us-gaap_AccruedProfessionalFeesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableCurrent" xlink:label="us-gaap_DividendsPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" xlink:label="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables"/>
          <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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_DepositLiabilityCurrent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="icfi_RestrictedContractFunds" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="icfi_AccruedTaxesAndInsurancePremiumsCurrent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_InterestPayableCurrent" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_AccruedProfessionalFeesCurrent" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_DividendsPayableCurrent" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrent" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TermLoanMember" xlink:label="icfi_TermLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DelayedDrawTermLoanMember" xlink:label="us-gaap_DelayedDrawTermLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditMember" xlink:label="us-gaap_LineOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent"/>
          <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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="icfi_TermLoanMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateDuringPeriod" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_LongtermDebtTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtInstrumentTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="us-gaap_DelayedDrawTermLoanMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentCarryingAmount" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="us-gaap_LineOfCreditMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtCurrent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtNoncurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebt" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TermLoanMember" xlink:label="icfi_TermLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="us-gaap_DesignatedAsHedgingInstrumentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="us-gaap_HedgingRelationshipDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DelayedDrawTermLoanFacilityMember" xlink:label="icfi_DelayedDrawTermLoanFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="us-gaap_FederalFundsEffectiveSwapRateMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashFlowHedgingMember" xlink:label="us-gaap_CashFlowHedgingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditMember" xlink:label="us-gaap_LineOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingDesignationAxis" xlink:label="us-gaap_HedgingDesignationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount" xlink:label="us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SecuredOvernightFinancingRateMember" xlink:label="icfi_SecuredOvernightFinancingRateMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LettersOfCreditOutstandingAmount" xlink:label="us-gaap_LettersOfCreditOutstandingAmount"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeFixedInterestRate" xlink:label="us-gaap_DerivativeFixedInterestRate"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="icfi_TermLoanMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_HedgingDesignationDomain" xlink:to="us-gaap_DesignatedAsHedgingInstrumentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:to="us-gaap_HedgingRelationshipDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentNameDomain" xlink:to="icfi_DelayedDrawTermLoanFacilityMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_FederalFundsEffectiveSwapRateMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_VariableRateAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_HedgingRelationshipDomain" xlink:to="us-gaap_CashFlowHedgingMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtInstrumentTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_InterestRateSwapMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="us-gaap_LineOfCreditMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateDomain" xlink:to="icfi_SecuredOvernightFinancingRateMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LettersOfCreditOutstandingAmount" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_LineOfCreditFacilityAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="srt_RangeAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DerivativeFixedInterestRate" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_LongtermDebtTypeAxis" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_HedgingDesignationAxis" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentLineItems" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TermLoanMember" xlink:label="icfi_TermLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DelayedDrawTermLoanMember" xlink:label="us-gaap_DelayedDrawTermLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditMember" xlink:label="us-gaap_LineOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="icfi_TermLoanMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_LongtermDebtTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtInstrumentTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="us-gaap_DelayedDrawTermLoanMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="us-gaap_LineOfCreditMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentCarryingAmount" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember" xlink:label="icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TimeAndMaterialsContractMember" xlink:label="us-gaap_TimeAndMaterialsContractMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="us-gaap_DisaggregationOfRevenueAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_USFederalGovernmentMember" xlink:label="icfi_USFederalGovernmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerMember" xlink:label="us-gaap_RevenueFromContractWithCustomerMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_HealthAndSocialProgramsMember" xlink:label="icfi_HealthAndSocialProgramsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FixedPriceContractMember" xlink:label="us-gaap_FixedPriceContractMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_USStateAndLocalGovernmentMember" xlink:label="icfi_USStateAndLocalGovernmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SecurityAndOtherCivilianAndCommercialMember" xlink:label="icfi_SecurityAndOtherCivilianAndCommercialMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CostBasedContractMember" xlink:label="icfi_CostBasedContractMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_InternationalGovernmentMember" xlink:label="icfi_InternationalGovernmentMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_USStateAndInternationalGovernmentMember" xlink:label="icfi_USStateAndInternationalGovernmentMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CommercialMember" xlink:label="icfi_CommercialMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_ProductOrServiceAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="us-gaap_TimeAndMaterialsContractMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueAbstract" xlink:to="us-gaap_DisaggregationOfRevenueTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="icfi_USFederalGovernmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_RevenueFromContractWithCustomerMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="icfi_HealthAndSocialProgramsMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="us-gaap_FixedPriceContractMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="icfi_USStateAndLocalGovernmentMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="icfi_SecurityAndOtherCivilianAndCommercialMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="icfi_CostBasedContractMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="icfi_InternationalGovernmentMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="icfi_USStateAndInternationalGovernmentMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingAxis" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="icfi_CommercialMember" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueLineItems" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent" xlink:label="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RevenueFromContractWithCustomerLineItems" xlink:label="icfi_RevenueFromContractWithCustomerLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RevenueFromContractWithCustomerTable" xlink:label="icfi_RevenueFromContractWithCustomerTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:label="us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations" xlink:label="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_RevenueFromContractWithCustomerTable" xlink:to="srt_RangeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="icfi_RevenueFromContractWithCustomerTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_RevenueFromContractWithCustomerTable" xlink:to="us-gaap_SubsequentEventTypeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationPercentage" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_RevenueFromContractWithCustomerTable" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_RevenueFromContractWithCustomerTable" xlink:to="icfi_RevenueFromContractWithCustomerLineItems" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditDerivativesContractTypeDomain" xlink:label="us-gaap_CreditDerivativesContractTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_JuneTwentySevenTwoThousandTwentyEightMember" xlink:label="icfi_JuneTwentySevenTwoThousandTwentyEightMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="us-gaap_DesignatedAsHedgingInstrumentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="us-gaap_HedgingRelationshipDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeTable" xlink:label="us-gaap_DerivativeTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditDerivativesByContractTypeAxis" xlink:label="us-gaap_CreditDerivativesByContractTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeLineItems" xlink:label="us-gaap_DerivativeLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeNotionalAmount" xlink:label="us-gaap_DerivativeNotionalAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashFlowHedgingMember" xlink:label="us-gaap_CashFlowHedgingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingDesignationAxis" xlink:label="us-gaap_HedgingDesignationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AugustThirtyFirstTwoThousandTwentyThreeMember" xlink:label="icfi_AugustThirtyFirstTwoThousandTwentyThreeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeMaturityDates" xlink:label="us-gaap_DerivativeMaturityDates"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_FebruaryTwentyEightTwoThousandTwentyEightMember" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyEightMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditDerivativesContractTypeDomain" xlink:to="icfi_JuneTwentySevenTwoThousandTwentyEightMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_HedgingDesignationDomain" xlink:to="us-gaap_DesignatedAsHedgingInstrumentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:to="us-gaap_HedgingRelationshipDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeTable" xlink:to="us-gaap_CreditDerivativesByContractTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeLineItems" xlink:to="us-gaap_DerivativeNotionalAmount" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_HedgingRelationshipDomain" xlink:to="us-gaap_CashFlowHedgingMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditDerivativesByContractTypeAxis" xlink:to="us-gaap_CreditDerivativesContractTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_InterestRateSwapMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="us-gaap_DerivativeTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditDerivativesContractTypeDomain" xlink:to="icfi_AugustThirtyFirstTwoThousandTwentyThreeMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeLineItems" xlink:to="us-gaap_DerivativeMaturityDates" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditDerivativesContractTypeDomain" xlink:to="icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeTable" xlink:to="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditDerivativesContractTypeDomain" xlink:to="icfi_FebruaryTwentyEightTwoThousandTwentyEightMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeTable" xlink:to="us-gaap_HedgingDesignationAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeTable" xlink:to="us-gaap_DerivativeLineItems" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition" xlink:label="icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent"/>
          <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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome" xlink:label="icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:label="us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember" xlink:label="icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" xlink:label="us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" xlink:label="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
          <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_6"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedTranslationAdjustmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_StockholdersEquity" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="us-gaap_StatementEquityComponentsAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_StockholdersEquity_6" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet" xlink:label="us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedTranslationAdjustmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="us-gaap_StatementEquityComponentsAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="us-gaap_ClassOfTreasuryStockTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="srt_ShareRepurchaseProgramAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramAuthorizedAmount1" xlink:label="srt_StockRepurchaseProgramAuthorizedAmount1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CreditFacilityMember" xlink:label="icfi_CreditFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="srt_ShareRepurchaseProgramDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TwoHundredMillionShareRepurchaseProgramMember" xlink:label="icfi_TwoHundredMillionShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_MillionShareRepurchaseProgramMember" xlink:label="icfi_MillionShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_InConnectionWithVestingOfRestrictedStockUnitsMember" xlink:label="icfi_InConnectionWithVestingOfRestrictedStockUnitsMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="srt_ShareRepurchaseProgramAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="srt_StockRepurchaseProgramAuthorizedAmount1" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_ClassOfTreasuryStockTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="icfi_CreditFacilityMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_TwoHundredMillionShareRepurchaseProgramMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_CreditFacilityAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_MillionShareRepurchaseProgramMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_EquityClassOfTreasuryStockLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_InConnectionWithVestingOfRestrictedStockUnitsMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="us-gaap_ClassOfTreasuryStockTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="srt_ShareRepurchaseProgramAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="srt_ShareRepurchaseProgramDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TwoHundredMillionShareRepurchaseProgramMember" xlink:label="icfi_TwoHundredMillionShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_MillionShareRepurchaseProgramMember" xlink:label="icfi_MillionShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_VestingOfRestrictedStockUnitsMember" xlink:label="icfi_VestingOfRestrictedStockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember" xlink:label="icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="srt_ShareRepurchaseProgramAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_ClassOfTreasuryStockTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_TwoHundredMillionShareRepurchaseProgramMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_EquityClassOfTreasuryStockLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_MillionShareRepurchaseProgramMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_VestingOfRestrictedStockUnitsMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_OmnibusPlanMember" xlink:label="icfi_OmnibusPlanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CashSettledRSUsMember" xlink:label="icfi_CashSettledRSUsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameDomain" xlink:to="icfi_OmnibusPlanMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_PlanNameAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" order="3.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="icfi_CashSettledRSUsMember" order="4.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_PerformanceSharesMember" order="5.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_EmployeeStockAwardsMember" xlink:label="icfi_EmployeeStockAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CashSettledRSUsMember" xlink:label="icfi_CashSettledRSUsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NonemployeeDirectOrAwardsMember" xlink:label="icfi_NonemployeeDirectOrAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NonEmployeeDirectorStockAwardsMember" xlink:label="icfi_NonEmployeeDirectorStockAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" order="3.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="icfi_EmployeeStockAwardsMember" order="4.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="icfi_CashSettledRSUsMember" order="5.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="icfi_NonemployeeDirectOrAwardsMember" order="6.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="icfi_NonEmployeeDirectorStockAwardsMember" order="7.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_PerformanceSharesMember" order="8.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="us-gaap_BusinessCombinationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ScheduleOfAcquisitionAndDivestitureTable" xlink:label="icfi_ScheduleOfAcquisitionAndDivestitureTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AppliedEnergyGroupIncMember" xlink:label="icfi_AppliedEnergyGroupIncMember"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CommercialMarketingMember" xlink:label="icfi_CommercialMarketingMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AcquisitionAndDivestitureLineItems" xlink:label="icfi_AcquisitionAndDivestitureLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" xlink:label="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="us-gaap_TrademarksAndTradeNamesMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CMYSolutionsLLCMember" xlink:label="icfi_CMYSolutionsLLCMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity" xlink:label="us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles"/>
          <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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelationshipsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessCombinationsAbstract" xlink:to="icfi_ScheduleOfAcquisitionAndDivestitureTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_AppliedEnergyGroupIncMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_ScheduleOfAcquisitionAndDivestitureTable" xlink:to="us-gaap_BusinessAcquisitionAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:to="icfi_CommercialMarketingMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TrademarksAndTradeNamesMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_CMYSolutionsLLCMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_ScheduleOfAcquisitionAndDivestitureTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelatedIntangibleAssetsMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_ScheduleOfAcquisitionAndDivestitureTable" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_PaymentsToAcquireBusinessesGross" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_ScheduleOfAcquisitionAndDivestitureTable" xlink:to="icfi_AcquisitionAndDivestitureLineItems" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AppliedEnergyGroupIncMember" xlink:label="icfi_AppliedEnergyGroupIncMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AcquisitionAndDivestitureLineItems" xlink:label="icfi_AcquisitionAndDivestitureLineItems"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TechnologyBasedIntangibleAssetsMember" xlink:label="us-gaap_TechnologyBasedIntangibleAssetsMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="us-gaap_TrademarksAndTradeNamesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract" xlink:to="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelatedIntangibleAssetsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="us-gaap_BusinessAcquisitionAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_AppliedEnergyGroupIncMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TechnologyBasedIntangibleAssetsMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TrademarksAndTradeNamesMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="icfi_AcquisitionAndDivestitureLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AppliedEnergyGroupIncMember" xlink:label="icfi_AppliedEnergyGroupIncMember"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:label="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="us-gaap_TrademarksAndTradeNamesMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelatedIntangibleAssetsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_AppliedEnergyGroupIncMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:to="us-gaap_BusinessAcquisitionAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_DevelopedTechnologyRightsMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TrademarksAndTradeNamesMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails" xlink:title="presentationLink" xlink:type="extended">
          <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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
          <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: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: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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_NetIncomeLoss" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingAxis" xlink:label="us-gaap_VestingAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_InitialPerformanceVestingPeriodMember" xlink:label="icfi_InitialPerformanceVestingPeriodMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VestingAxis" xlink:to="us-gaap_VestingDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VestingDomain" xlink:to="icfi_InitialPerformanceVestingPeriodMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_StatementTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_VestingAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_PerformanceSharesMember" order="3.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:label="us-gaap_LiabilitiesFairValueDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialLiabilitiesFairValueDisclosure" xlink:label="us-gaap_FinancialLiabilitiesFairValueDisclosure"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="us-gaap_AssetsFairValueDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="us-gaap_AssetsFairValueDisclosure"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember" xlink:label="icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="us-gaap_FairValueInputsLevel1Member"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="us-gaap_FairValueMeasurementsRecurringMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncurrentAssetsMember" xlink:label="us-gaap_OtherNoncurrentAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DeferredCompensationPlanLiabilitiesMember" xlink:label="icfi_DeferredCompensationPlanLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember" xlink:label="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncurrentLiabilitiesMember" xlink:label="us-gaap_OtherNoncurrentLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CompanyOwnedLifeInsurancePoliciesMember" xlink:label="icfi_CompanyOwnedLifeInsurancePoliciesMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:to="us-gaap_FinancialLiabilitiesFairValueDisclosure" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueByMeasurementFrequencyAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsFairValueDisclosureAbstract" xlink:to="us-gaap_AssetsFairValueDisclosure" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel1Member" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_AssetsFairValueDisclosureAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByMeasurementFrequencyAxis" xlink:to="us-gaap_FairValueMeasurementFrequencyDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueMeasurementFrequencyDomain" xlink:to="us-gaap_FairValueMeasurementsRecurringMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_OtherNoncurrentAssetsMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="icfi_DeferredCompensationPlanLiabilitiesMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel2Member" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_LiabilitiesFairValueDisclosureAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FinancialInstrumentAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="us-gaap_InterestRateSwapMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel3Member" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_BalanceSheetLocationAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_OtherNoncurrentLiabilitiesMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="icfi_CompanyOwnedLifeInsurancePoliciesMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesTable" xlink:label="us-gaap_LossContingenciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandbyLettersOfCreditMember" xlink:label="us-gaap_StandbyLettersOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesLineItems" xlink:label="us-gaap_LossContingenciesLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LettersOfCreditOutstandingAmount" xlink:label="us-gaap_LettersOfCreditOutstandingAmount"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_LettersOfCreditGuarantees" xlink:label="icfi_LettersOfCreditGuarantees"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NumberOfOpenStandbyLettersOfCredit" xlink:label="icfi_NumberOfOpenStandbyLettersOfCredit"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesTable" xlink:to="us-gaap_CreditFacilityAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_StandbyLettersOfCreditMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LettersOfCreditOutstandingAmount" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_LossContingenciesTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesTable" xlink:to="us-gaap_LossContingenciesLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="icfi_LettersOfCreditGuarantees" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="icfi_NumberOfOpenStandbyLettersOfCredit" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration" xlink:label="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription" xlink:label="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_NumberOfOperatingSegments" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_NumberOfReportableSegments" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SignificantSegmentExpensesAbstract" xlink:label="icfi_SignificantSegmentExpensesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DirectLaborAndRelatedFringeCosts" xlink:label="icfi_DirectLaborAndRelatedFringeCosts"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReconciliationFromSegmentTotalsToConsolidatedAbstract" xlink:label="us-gaap_ReconciliationFromSegmentTotalsToConsolidatedAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SegmentDepreciationAndAmortizationMember" xlink:label="icfi_SegmentDepreciationAndAmortizationMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SubcontractorsAndOtherDirectCosts" xlink:label="icfi_SubcontractorsAndOtherDirectCosts"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember" xlink:label="icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestExpenseNonoperating" xlink:label="us-gaap_InterestExpenseNonoperating"/>
          <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:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="icfi_DirectLaborAndRelatedFringeCosts" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_IncomeStatementLocationAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="icfi_SignificantSegmentExpensesAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReconciliationFromSegmentTotalsToConsolidatedAbstract" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="icfi_SegmentDepreciationAndAmortizationMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="icfi_SubcontractorsAndOtherDirectCosts" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_SegmentReportingInformationLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_SegmentReportingOtherItemAmount" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_NetIncomeLoss" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="us-gaap_DepreciationAndAmortization" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="us-gaap_InterestExpenseNonoperating" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventLineItems" xlink:label="us-gaap_SubsequentEventLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableDateDeclaredDayMonthAndYear" xlink:label="us-gaap_DividendsPayableDateDeclaredDayMonthAndYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SemanticBitsLLCMember" xlink:label="icfi_SemanticBitsLLCMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTable" xlink:label="us-gaap_SubsequentEventTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableAmountPerShare" xlink:label="us-gaap_DividendsPayableAmountPerShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendPayableDateToBePaidDayMonthAndYear" xlink:label="us-gaap_DividendPayableDateToBePaidDayMonthAndYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableDateOfRecordDayMonthAndYear" xlink:label="us-gaap_DividendsPayableDateOfRecordDayMonthAndYear"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_DividendsPayableDateDeclaredDayMonthAndYear" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_SemanticBitsLLCMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_SubsequentEventTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventsAbstract" xlink:to="us-gaap_SubsequentEventTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_DividendsPayableAmountPerShare" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_BusinessAcquisitionAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_DividendPayableDateToBePaidDayMonthAndYear" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_SubsequentEventLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_DividendsPayableDateOfRecordDayMonthAndYear" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestructuringCostsAbstract" xlink:label="us-gaap_RestructuringCostsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RestructuringAndRelatedCostLineItemsLineItems" xlink:label="icfi_RestructuringAndRelatedCostLineItemsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestructuringCosts" xlink:label="us-gaap_RestructuringCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScenarioPlanMember" xlink:label="us-gaap_ScenarioPlanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SeveranceCosts1" xlink:label="us-gaap_SeveranceCosts1"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SeveranceChargeExpectedToBePaid" xlink:label="icfi_SeveranceChargeExpectedToBePaid"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="srt_StatementScenarioAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostsAbstract" xlink:to="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_RestructuringAndRelatedCostLineItemsLineItems" xlink:to="us-gaap_RestructuringCosts" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ScenarioUnspecifiedDomain" xlink:to="us-gaap_ScenarioPlanMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="icfi_RestructuringAndRelatedCostLineItemsLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_RestructuringAndRelatedCostLineItemsLineItems" xlink:to="us-gaap_SeveranceCosts1" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="icfi_RestructuringAndRelatedCostLineItemsLineItems" xlink:to="icfi_SeveranceChargeExpectedToBePaid" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited">
          <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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain_default"/>
          <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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="us-gaap_TreasuryStockCommonShares"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="us-gaap_TreasuryStockCommonMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
          <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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:label="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_PaymentsForShareRepurchasesValue" xlink:label="icfi_PaymentsForShareRepurchasesValue"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_PaymentsForShareRepurchasesShares" xlink:label="icfi_PaymentsForShareRepurchasesShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsCommonStockCash" xlink:label="us-gaap_DividendsCommonStockCash"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesIssued" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockCommonShares" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_TreasuryStockCommonMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="9" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="10" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="icfi_PaymentsForShareRepurchasesValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="11" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="icfi_PaymentsForShareRepurchasesShares" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="12" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DividendsCommonStockCash" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BasisOfPresentationAndNatureOfOperationsLineItems" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BasisOfPresentationAndNatureOfOperationsTable" xlink:label="icfi_BasisOfPresentationAndNatureOfOperationsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedComputerSoftwareNet" xlink:label="us-gaap_CapitalizedComputerSoftwareNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IntangibleAssetsNetExcludingGoodwillMember" xlink:label="icfi_IntangibleAssetsNetExcludingGoodwillMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsLineItems" xlink:to="icfi_BasisOfPresentationAndNatureOfOperationsTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsLineItems" xlink:to="us-gaap_CapitalizedComputerSoftwareNet" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="icfi_IntangibleAssetsNetExcludingGoodwillMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsTable" xlink:to="us-gaap_BalanceSheetLocationAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsLineItems" xlink:to="us-gaap_NumberOfOperatingSegments" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_BasisOfPresentationAndNatureOfOperationsLineItems" xlink:to="us-gaap_NumberOfReportableSegments" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:label="us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted" xlink:label="icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember" xlink:label="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SaleOfReceivablesLiabilities" xlink:label="icfi_SaleOfReceivablesLiabilities"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:to="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:to="icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:to="us-gaap_BalanceSheetLocationAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:to="icfi_SaleOfReceivablesLiabilities" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems" xlink:label="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFinancingReceivablesPastDueTable" xlink:label="us-gaap_ScheduleOfFinancingReceivablesPastDueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractReceivablesAxis" xlink:label="icfi_ContractReceivablesAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember_default"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractReceivablesDomain" xlink:label="icfi_ContractReceivablesDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember" xlink:label="icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleAndCollectionOfReceivables" xlink:label="us-gaap_ProceedsFromSaleAndCollectionOfReceivables"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractReceivablesDomain" xlink:label="icfi_ContractReceivablesDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" xlink:label="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems" xlink:to="us-gaap_ScheduleOfFinancingReceivablesPastDueTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfFinancingReceivablesPastDueTable" xlink:to="icfi_ContractReceivablesAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_ContractReceivablesDomain" xlink:to="icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems" xlink:to="us-gaap_ProceedsFromSaleAndCollectionOfReceivables" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="icfi_ContractReceivablesAxis" xlink:to="icfi_ContractReceivablesDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="icfi_ContractReceivablesAxis" xlink:to="icfi_ContractReceivablesDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfFinancingReceivablesPastDueTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems" xlink:to="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillLineItems" xlink:label="us-gaap_GoodwillLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="us-gaap_ScheduleOfGoodwillTable"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:label="us-gaap_GoodwillPurchaseAccountingAdjustments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ESACAcquisitionMember" xlink:label="icfi_ESACAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit" xlink:label="us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CreativeSystemsAndConsultingAcquisitionMember" xlink:label="icfi_CreativeSystemsAndConsultingAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SemanticBitsLLCMember" xlink:label="icfi_SemanticBitsLLCMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BlantonAndAssociatesMember" xlink:label="icfi_BlantonAndAssociatesMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CMYAcquisitionMember" xlink:label="icfi_CMYAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CMGAcquisitionMember" xlink:label="icfi_CMGAcquisitionMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_ScheduleOfGoodwillTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_BusinessAcquisitionAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_GoodwillPurchaseAccountingAdjustments" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_ESACAcquisitionMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_CreativeSystemsAndConsultingAcquisitionMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_GoodwillForeignCurrencyTranslationGainLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_SemanticBitsLLCMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_BlantonAndAssociatesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_CMYAcquisitionMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_CMGAcquisitionMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionLineItems" xlink:label="us-gaap_LesseeLeaseDescriptionLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionTable" xlink:label="us-gaap_LesseeLeaseDescriptionTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseRemainingLeaseTerm" xlink:label="us-gaap_LesseeOperatingLeaseRemainingLeaseTerm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" xlink:label="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseRenewalTerm1" xlink:label="us-gaap_LesseeFinanceLeaseRenewalTerm1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseOptionToExtend" xlink:label="us-gaap_LesseeOperatingLeaseOptionToExtend"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseOptionToExtend" xlink:label="us-gaap_LesseeFinanceLeaseOptionToExtend"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_LesseeOperatingLeaseTerminationTerm" xlink:label="icfi_LesseeOperatingLeaseTerminationTerm"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_FinanceLeasesTerminationLeaseTerm" xlink:label="icfi_FinanceLeasesTerminationLeaseTerm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseOptionToTerminate" xlink:label="us-gaap_LesseeOperatingLeaseOptionToTerminate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseOptionToTerminate" xlink:label="us-gaap_LesseeFinanceLeaseOptionToTerminate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription" xlink:label="us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription" xlink:label="us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NumberOfOfficeFacilitiesCeasedUse" xlink:label="icfi_NumberOfOfficeFacilitiesCeasedUse"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseImpairmentLoss" xlink:label="us-gaap_OperatingLeaseImpairmentLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ImpairmentOfLeasehold" xlink:label="us-gaap_ImpairmentOfLeasehold"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedOtherFutureLeaseRelatedExpenses" xlink:label="icfi_AccruedOtherFutureLeaseRelatedExpenses"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeLeaseDescriptionTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LesseeLeaseDescriptionTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseRemainingLeaseTerm" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseRenewalTerm" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeFinanceLeaseRenewalTerm1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseOptionToExtend" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeFinanceLeaseOptionToExtend" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="icfi_LesseeOperatingLeaseTerminationTerm" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="icfi_FinanceLeasesTerminationLeaseTerm" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="9" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseOptionToTerminate" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="10" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeFinanceLeaseOptionToTerminate" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="11" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="12" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="13" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="14" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="15" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="icfi_NumberOfOfficeFacilitiesCeasedUse" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="16" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_OperatingLeaseImpairmentLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="17" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_ImpairmentOfLeasehold" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="18" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="icfi_AccruedOtherFutureLeaseRelatedExpenses" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TermLoanMember" xlink:label="icfi_TermLoanMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DelayedDrawTermLoanMember" xlink:label="us-gaap_DelayedDrawTermLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditMember" xlink:label="us-gaap_LineOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent"/>
          <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:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="icfi_TermLoanMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateDuringPeriod" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_LongtermDebtTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="us-gaap_DelayedDrawTermLoanMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentCarryingAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="us-gaap_LineOfCreditMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtCurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtNoncurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebt" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TermLoanMember" xlink:label="icfi_TermLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="us-gaap_DesignatedAsHedgingInstrumentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="us-gaap_HedgingRelationshipDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="us-gaap_HedgingRelationshipDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DelayedDrawTermLoanFacilityMember" xlink:label="icfi_DelayedDrawTermLoanFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="us-gaap_FederalFundsEffectiveSwapRateMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashFlowHedgingMember" xlink:label="us-gaap_CashFlowHedgingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditMember" xlink:label="us-gaap_LineOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingDesignationAxis" xlink:label="us-gaap_HedgingDesignationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount" xlink:label="us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SecuredOvernightFinancingRateMember" xlink:label="icfi_SecuredOvernightFinancingRateMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LettersOfCreditOutstandingAmount" xlink:label="us-gaap_LettersOfCreditOutstandingAmount"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeFixedInterestRate" xlink:label="us-gaap_DerivativeFixedInterestRate"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="icfi_TermLoanMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_HedgingDesignationDomain" xlink:to="us-gaap_DesignatedAsHedgingInstrumentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:to="us-gaap_HedgingRelationshipDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:to="us-gaap_HedgingRelationshipDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentNameDomain" xlink:to="icfi_DelayedDrawTermLoanFacilityMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_FederalFundsEffectiveSwapRateMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_VariableRateAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_HedgingRelationshipDomain" xlink:to="us-gaap_CashFlowHedgingMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_InterestRateSwapMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="us-gaap_LineOfCreditMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="icfi_SecuredOvernightFinancingRateMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LettersOfCreditOutstandingAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_LineOfCreditFacilityAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DerivativeFixedInterestRate" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_LongtermDebtTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_HedgingDesignationAxis" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TermLoanMember" xlink:label="icfi_TermLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DelayedDrawTermLoanMember" xlink:label="us-gaap_DelayedDrawTermLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditMember" xlink:label="us-gaap_LineOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="icfi_TermLoanMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_LongtermDebtTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="us-gaap_DelayedDrawTermLoanMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="us-gaap_LineOfCreditMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentCarryingAmount" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember" xlink:label="icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TimeAndMaterialsContractMember" xlink:label="us-gaap_TimeAndMaterialsContractMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_USFederalGovernmentMember" xlink:label="icfi_USFederalGovernmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerMember" xlink:label="us-gaap_RevenueFromContractWithCustomerMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_HealthAndSocialProgramsMember" xlink:label="icfi_HealthAndSocialProgramsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FixedPriceContractMember" xlink:label="us-gaap_FixedPriceContractMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_USStateAndLocalGovernmentMember" xlink:label="icfi_USStateAndLocalGovernmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SecurityAndOtherCivilianAndCommercialMember" xlink:label="icfi_SecurityAndOtherCivilianAndCommercialMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CostBasedContractMember" xlink:label="icfi_CostBasedContractMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_InternationalGovernmentMember" xlink:label="icfi_InternationalGovernmentMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_USStateAndInternationalGovernmentMember" xlink:label="icfi_USStateAndInternationalGovernmentMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CommercialMember" xlink:label="icfi_CommercialMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_ProductOrServiceAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="us-gaap_TimeAndMaterialsContractMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="icfi_USFederalGovernmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_RevenueFromContractWithCustomerMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="icfi_HealthAndSocialProgramsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="us-gaap_FixedPriceContractMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="icfi_USStateAndLocalGovernmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="icfi_SecurityAndOtherCivilianAndCommercialMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="icfi_CostBasedContractMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="icfi_InternationalGovernmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="icfi_USStateAndInternationalGovernmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="icfi_CommercialMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1">
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RevenueFromContractWithCustomerLineItems" xlink:label="icfi_RevenueFromContractWithCustomerLineItems"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RevenueFromContractWithCustomerTable" xlink:label="icfi_RevenueFromContractWithCustomerTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:label="us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations" xlink:label="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="icfi_RevenueFromContractWithCustomerTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="icfi_RevenueFromContractWithCustomerTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="icfi_RevenueFromContractWithCustomerTable" xlink:to="us-gaap_SubsequentEventTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationPercentage" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="icfi_RevenueFromContractWithCustomerTable" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1Default">
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RevenueFromContractWithCustomerLineItems" xlink:label="icfi_RevenueFromContractWithCustomerLineItems"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RevenueFromContractWithCustomerTable" xlink:label="icfi_RevenueFromContractWithCustomerTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:label="us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations" xlink:label="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="icfi_RevenueFromContractWithCustomerTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="icfi_RevenueFromContractWithCustomerTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="icfi_RevenueFromContractWithCustomerTable" xlink:to="us-gaap_SubsequentEventTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationPercentage" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_RevenueFromContractWithCustomerLineItems" xlink:to="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeLineItems" xlink:label="us-gaap_DerivativeLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeTable" xlink:label="us-gaap_DerivativeTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditDerivativesContractTypeDomain" xlink:label="us-gaap_CreditDerivativesContractTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_JuneTwentySevenTwoThousandTwentyEightMember" xlink:label="icfi_JuneTwentySevenTwoThousandTwentyEightMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="us-gaap_DesignatedAsHedgingInstrumentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="us-gaap_HedgingRelationshipDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditDerivativesByContractTypeAxis" xlink:label="us-gaap_CreditDerivativesByContractTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeNotionalAmount" xlink:label="us-gaap_DerivativeNotionalAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashFlowHedgingMember" xlink:label="us-gaap_CashFlowHedgingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditDerivativesContractTypeDomain" xlink:label="us-gaap_CreditDerivativesContractTypeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_HedgingDesignationAxis" xlink:label="us-gaap_HedgingDesignationAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AugustThirtyFirstTwoThousandTwentyThreeMember" xlink:label="icfi_AugustThirtyFirstTwoThousandTwentyThreeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DerivativeMaturityDates" xlink:label="us-gaap_DerivativeMaturityDates"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_FebruaryTwentyEightTwoThousandTwentyEightMember" xlink:label="icfi_FebruaryTwentyEightTwoThousandTwentyEightMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_DerivativeLineItems" xlink:to="us-gaap_DerivativeTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditDerivativesContractTypeDomain" xlink:to="icfi_JuneTwentySevenTwoThousandTwentyEightMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_HedgingDesignationDomain" xlink:to="us-gaap_DesignatedAsHedgingInstrumentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:to="us-gaap_HedgingRelationshipDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DerivativeTable" xlink:to="us-gaap_CreditDerivativesByContractTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeLineItems" xlink:to="us-gaap_DerivativeNotionalAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_HedgingRelationshipDomain" xlink:to="us-gaap_CashFlowHedgingMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_CreditDerivativesByContractTypeAxis" xlink:to="us-gaap_CreditDerivativesContractTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_CreditDerivativesByContractTypeAxis" xlink:to="us-gaap_CreditDerivativesContractTypeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_InterestRateSwapMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditDerivativesContractTypeDomain" xlink:to="icfi_AugustThirtyFirstTwoThousandTwentyThreeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DerivativeTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeLineItems" xlink:to="us-gaap_DerivativeMaturityDates" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditDerivativesContractTypeDomain" xlink:to="icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DerivativeTable" xlink:to="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditDerivativesContractTypeDomain" xlink:to="icfi_FebruaryTwentyEightTwoThousandTwentyEightMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DerivativeTable" xlink:to="us-gaap_HedgingDesignationAxis" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:label="us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember" xlink:label="icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" xlink:label="us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" xlink:label="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedTranslationAdjustmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_StockholdersEquity" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="us-gaap_StatementEquityComponentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet" xlink:label="us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedTranslationAdjustmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="us-gaap_StatementEquityComponentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="us-gaap_ClassOfTreasuryStockTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="srt_ShareRepurchaseProgramAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramAuthorizedAmount1" xlink:label="srt_StockRepurchaseProgramAuthorizedAmount1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CreditFacilityMember" xlink:label="icfi_CreditFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="srt_ShareRepurchaseProgramDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="srt_ShareRepurchaseProgramDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TwoHundredMillionShareRepurchaseProgramMember" xlink:label="icfi_TwoHundredMillionShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_MillionShareRepurchaseProgramMember" xlink:label="icfi_MillionShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_InConnectionWithVestingOfRestrictedStockUnitsMember" xlink:label="icfi_InConnectionWithVestingOfRestrictedStockUnitsMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_ClassOfTreasuryStockTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="srt_ShareRepurchaseProgramAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="srt_StockRepurchaseProgramAuthorizedAmount1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="icfi_CreditFacilityMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_TwoHundredMillionShareRepurchaseProgramMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_CreditFacilityAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_MillionShareRepurchaseProgramMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_InConnectionWithVestingOfRestrictedStockUnitsMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="us-gaap_ClassOfTreasuryStockTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="srt_ShareRepurchaseProgramAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="srt_ShareRepurchaseProgramDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_TwoHundredMillionShareRepurchaseProgramMember" xlink:label="icfi_TwoHundredMillionShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_MillionShareRepurchaseProgramMember" xlink:label="icfi_MillionShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_VestingOfRestrictedStockUnitsMember" xlink:label="icfi_VestingOfRestrictedStockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember" xlink:label="icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_ClassOfTreasuryStockTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="srt_ShareRepurchaseProgramAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_TwoHundredMillionShareRepurchaseProgramMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_MillionShareRepurchaseProgramMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_VestingOfRestrictedStockUnitsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_OmnibusPlanMember" xlink:label="icfi_OmnibusPlanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CashSettledRSUsMember" xlink:label="icfi_CashSettledRSUsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="icfi_OmnibusPlanMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_PlanNameAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="icfi_CashSettledRSUsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_PerformanceSharesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_EmployeeStockAwardsMember" xlink:label="icfi_EmployeeStockAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CashSettledRSUsMember" xlink:label="icfi_CashSettledRSUsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NonemployeeDirectOrAwardsMember" xlink:label="icfi_NonemployeeDirectOrAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NonEmployeeDirectorStockAwardsMember" xlink:label="icfi_NonEmployeeDirectorStockAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="icfi_EmployeeStockAwardsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="icfi_CashSettledRSUsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="icfi_NonemployeeDirectOrAwardsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="icfi_NonEmployeeDirectorStockAwardsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_PerformanceSharesMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AcquisitionAndDivestitureLineItems" xlink:label="icfi_AcquisitionAndDivestitureLineItems"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ScheduleOfAcquisitionAndDivestitureTable" xlink:label="icfi_ScheduleOfAcquisitionAndDivestitureTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_default"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_default"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AppliedEnergyGroupIncMember" xlink:label="icfi_AppliedEnergyGroupIncMember"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CommercialMarketingMember" xlink:label="icfi_CommercialMarketingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" xlink:label="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="us-gaap_TrademarksAndTradeNamesMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CMYSolutionsLLCMember" xlink:label="icfi_CMYSolutionsLLCMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity" xlink:label="us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles"/>
          <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:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="icfi_ScheduleOfAcquisitionAndDivestitureTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelationshipsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_AppliedEnergyGroupIncMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="icfi_ScheduleOfAcquisitionAndDivestitureTable" xlink:to="us-gaap_BusinessAcquisitionAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:to="icfi_CommercialMarketingMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TrademarksAndTradeNamesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_CMYSolutionsLLCMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="icfi_ScheduleOfAcquisitionAndDivestitureTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelatedIntangibleAssetsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="icfi_ScheduleOfAcquisitionAndDivestitureTable" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_PaymentsToAcquireBusinessesGross" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="9" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="10" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="11" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails">
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AcquisitionAndDivestitureLineItems" xlink:label="icfi_AcquisitionAndDivestitureLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AppliedEnergyGroupIncMember" xlink:label="icfi_AppliedEnergyGroupIncMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TechnologyBasedIntangibleAssetsMember" xlink:label="us-gaap_TechnologyBasedIntangibleAssetsMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="us-gaap_TrademarksAndTradeNamesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xlink:label="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelatedIntangibleAssetsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="us-gaap_BusinessAcquisitionAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_AppliedEnergyGroupIncMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TechnologyBasedIntangibleAssetsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TrademarksAndTradeNamesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_AcquisitionAndDivestitureLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:label="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AppliedEnergyGroupIncMember" xlink:label="icfi_AppliedEnergyGroupIncMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="us-gaap_TrademarksAndTradeNamesMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelatedIntangibleAssetsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_AppliedEnergyGroupIncMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:to="us-gaap_BusinessAcquisitionAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_DevelopedTechnologyRightsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TrademarksAndTradeNamesMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails">
          <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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingAxis" xlink:label="us-gaap_VestingAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_InitialPerformanceVestingPeriodMember" xlink:label="icfi_InitialPerformanceVestingPeriodMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_VestingAxis" xlink:to="us-gaap_VestingDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_VestingAxis" xlink:to="us-gaap_VestingDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_PerformanceSharesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VestingDomain" xlink:to="icfi_InitialPerformanceVestingPeriodMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_VestingAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:label="us-gaap_LiabilitiesFairValueDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialLiabilitiesFairValueDisclosure" xlink:label="us-gaap_FinancialLiabilitiesFairValueDisclosure"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="us-gaap_AssetsFairValueDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="us-gaap_AssetsFairValueDisclosure"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember" xlink:label="icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="us-gaap_FairValueInputsLevel1Member"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="us-gaap_FairValueMeasurementsRecurringMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncurrentAssetsMember" xlink:label="us-gaap_OtherNoncurrentAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DeferredCompensationPlanLiabilitiesMember" xlink:label="icfi_DeferredCompensationPlanLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember" xlink:label="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncurrentLiabilitiesMember" xlink:label="us-gaap_OtherNoncurrentLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CompanyOwnedLifeInsurancePoliciesMember" xlink:label="icfi_CompanyOwnedLifeInsurancePoliciesMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:to="us-gaap_FinancialLiabilitiesFairValueDisclosure" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueByMeasurementFrequencyAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsFairValueDisclosureAbstract" xlink:to="us-gaap_AssetsFairValueDisclosure" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel1Member" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_AssetsFairValueDisclosureAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FairValueByMeasurementFrequencyAxis" xlink:to="us-gaap_FairValueMeasurementFrequencyDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FairValueByMeasurementFrequencyAxis" xlink:to="us-gaap_FairValueMeasurementFrequencyDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueMeasurementFrequencyDomain" xlink:to="us-gaap_FairValueMeasurementsRecurringMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_OtherNoncurrentAssetsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="icfi_DeferredCompensationPlanLiabilitiesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel2Member" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_LiabilitiesFairValueDisclosureAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FinancialInstrumentAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="us-gaap_InterestRateSwapMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel3Member" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_BalanceSheetLocationAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_OtherNoncurrentLiabilitiesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="icfi_CompanyOwnedLifeInsurancePoliciesMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesLineItems" xlink:label="us-gaap_LossContingenciesLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesTable" xlink:label="us-gaap_LossContingenciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandbyLettersOfCreditMember" xlink:label="us-gaap_StandbyLettersOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LettersOfCreditOutstandingAmount" xlink:label="us-gaap_LettersOfCreditOutstandingAmount"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_LettersOfCreditGuarantees" xlink:label="icfi_LettersOfCreditGuarantees"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_NumberOfOpenStandbyLettersOfCredit" xlink:label="icfi_NumberOfOpenStandbyLettersOfCredit"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LossContingenciesTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LossContingenciesTable" xlink:to="us-gaap_CreditFacilityAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_StandbyLettersOfCreditMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LettersOfCreditOutstandingAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="icfi_LettersOfCreditGuarantees" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="icfi_NumberOfOpenStandbyLettersOfCredit" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SignificantSegmentExpensesAbstract" xlink:label="icfi_SignificantSegmentExpensesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DirectLaborAndRelatedFringeCosts" xlink:label="icfi_DirectLaborAndRelatedFringeCosts"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SegmentDepreciationAndAmortizationMember" xlink:label="icfi_SegmentDepreciationAndAmortizationMember"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SubcontractorsAndOtherDirectCosts" xlink:label="icfi_SubcontractorsAndOtherDirectCosts"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember" xlink:label="icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestExpenseNonoperating" xlink:label="us-gaap_InterestExpenseNonoperating"/>
          <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:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="icfi_DirectLaborAndRelatedFringeCosts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_IncomeStatementLocationAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="icfi_SignificantSegmentExpensesAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="icfi_SegmentDepreciationAndAmortizationMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="icfi_SubcontractorsAndOtherDirectCosts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_SegmentReportingOtherItemAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_NetIncomeLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="us-gaap_DepreciationAndAmortization" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="us-gaap_InterestExpenseNonoperating" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_SignificantSegmentExpensesAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventLineItems" xlink:label="us-gaap_SubsequentEventLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTable" xlink:label="us-gaap_SubsequentEventTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableDateDeclaredDayMonthAndYear" xlink:label="us-gaap_DividendsPayableDateDeclaredDayMonthAndYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SemanticBitsLLCMember" xlink:label="icfi_SemanticBitsLLCMember"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableAmountPerShare" xlink:label="us-gaap_DividendsPayableAmountPerShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendPayableDateToBePaidDayMonthAndYear" xlink:label="us-gaap_DividendPayableDateToBePaidDayMonthAndYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableDateOfRecordDayMonthAndYear" xlink:label="us-gaap_DividendsPayableDateOfRecordDayMonthAndYear"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_SubsequentEventTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_DividendsPayableDateDeclaredDayMonthAndYear" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="icfi_SemanticBitsLLCMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_SubsequentEventTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_DividendsPayableAmountPerShare" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_BusinessAcquisitionAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_DividendPayableDateToBePaidDayMonthAndYear" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_DividendsPayableDateOfRecordDayMonthAndYear" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RestructuringAndRelatedCostLineItemsLineItems" xlink:label="icfi_RestructuringAndRelatedCostLineItemsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestructuringCosts" xlink:label="us-gaap_RestructuringCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScenarioPlanMember" xlink:label="us-gaap_ScenarioPlanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SeveranceCosts1" xlink:label="us-gaap_SeveranceCosts1"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SeveranceChargeExpectedToBePaid" xlink:label="icfi_SeveranceChargeExpectedToBePaid"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="icfi_RestructuringAndRelatedCostLineItemsLineItems" xlink:to="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="srt_StatementScenarioAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_RestructuringAndRelatedCostLineItemsLineItems" xlink:to="us-gaap_RestructuringCosts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ScenarioUnspecifiedDomain" xlink:to="us-gaap_ScenarioPlanMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_RestructuringAndRelatedCostLineItemsLineItems" xlink:to="us-gaap_SeveranceCosts1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="icfi_RestructuringAndRelatedCostLineItemsLineItems" xlink:to="icfi_SeveranceChargeExpectedToBePaid" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://fasb.org/srt/role/srt-eedm/ExtensibleEnumerationLists">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ChiefExecutiveOfficerMember" xlink:label="srt_ChiefExecutiveOfficerMember"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_ChiefExecutiveOfficerMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsCurrent" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_PreferredStockValue" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_Liabilities" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LiabilitiesCurrent" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_CommonStockValue" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_CommitmentsAndContingencies" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LongTermDebtNoncurrent" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_RestrictedCashCurrent" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableCurrent" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Goodwill" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_StockholdersEquity" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" order="4" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_TreasuryStockValue" order="4" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" order="4" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent" order="4" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet" order="5" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="5" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" order="5" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_IncomeTaxesReceivable" order="5" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" order="5" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_OtherAssetsNoncurrent" order="6" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="icfi_AccruedSubcontractorAndOtherDirectCosts" order="6" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesAndOtherLiabilities" order="7" weight="1.00" use="optional"/>
          <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: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: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: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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashCurrent" xlink:label="us-gaap_RestrictedCashCurrent"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock"/>
          <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: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: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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="us-gaap_IncomeTaxesReceivable"/>
          <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: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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedSubcontractorAndOtherDirectCosts" xlink:label="icfi_AccruedSubcontractorAndOtherDirectCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesAndOtherLiabilities" xlink:label="us-gaap_AccruedLiabilitiesAndOtherLiabilities"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails3">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebtCurrent" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebtNoncurrent" order="1" weight="1" use="optional"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails3">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent" order="1" weight="1" use="optional"/>
          <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: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: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: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: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: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:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_OperatingIncomeLoss" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_NetIncomeLoss" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="1" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_DepreciationAndAmortization" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_CostOfGoodsAndServicesSold" order="1" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_InterestIncomeExpenseNet" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses" xlink:to="icfi_AmortizationOfIntangibleAsset" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingExpenses" order="2" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" order="3" weight="1.00" use="optional"/>
          <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: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: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: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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AmortizationOfIntangibleAsset" xlink:label="icfi_AmortizationOfIntangibleAsset"/>
          <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:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ProfitLoss" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromBankDebt" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquireProductiveAssets" order="0" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ProvisionForOtherCreditLosses" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_RepaymentsOfLongTermDebt" order="1" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits" order="3" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_RepaymentsOfOtherShortTermDebt" order="3" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromDivestitureOfBusinesses" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ShareBasedCompensation" order="5" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromOtherShortTermDebt" order="5" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DepreciationDepletionAndAmortization" order="6" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="icfi_ProceedsFromRestrictedContractFunds" order="6" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromPaymentsForOtherFinancingActivities" order="7" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="icfi_RepaymentsOfRestrictedContractFunds" order="8" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_GainLossOnSaleOfBusiness" order="10" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_OtherNoncashIncomeExpense" order="12" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsOfDividendsCommonStock" order="12" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" order="13" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsForRepurchaseOfEquity" order="13" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInReceivables" order="14" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" order="15" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities" order="16" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" order="17" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" order="18" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts" order="19" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" order="20" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" order="21" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" order="22" weight="1.00" use="optional"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromBankDebt" xlink:label="us-gaap_ProceedsFromBankDebt"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireProductiveAssets" xlink:label="us-gaap_PaymentsToAcquireProductiveAssets"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits" xlink:label="icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfOtherShortTermDebt" xlink:label="us-gaap_RepaymentsOfOtherShortTermDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinesses"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromOtherShortTermDebt" xlink:label="us-gaap_ProceedsFromOtherShortTermDebt"/>
          <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:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ProceedsFromRestrictedContractFunds" xlink:label="icfi_ProceedsFromRestrictedContractFunds"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromPaymentsForOtherFinancingActivities" xlink:label="us-gaap_ProceedsFromPaymentsForOtherFinancingActivities"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RepaymentsOfRestrictedContractFunds" xlink:label="icfi_RepaymentsOfRestrictedContractFunds"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnSaleOfBusiness" xlink:label="us-gaap_GainLossOnSaleOfBusiness"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="us-gaap_PaymentsOfDividendsCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" xlink:label="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRepurchaseOfEquity" xlink:label="us-gaap_PaymentsForRepurchaseOfEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInReceivables" xlink:label="us-gaap_IncreaseDecreaseInReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities" xlink:label="icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts" xlink:label="icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_RestrictedCashCurrent" order="1" weight="1.00" use="optional"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashCurrent" xlink:label="us-gaap_RestrictedCashCurrent"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_BilledContractReceivables" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" order="2" weight="-1.00" use="optional"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BilledContractReceivables" xlink:label="us-gaap_BilledContractReceivables"/>
          <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:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails2">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiability" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_OperatingLeaseLiability" order="1" weight="1.00" use="optional"/>
          <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: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: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: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: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: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:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" order="4" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" order="4" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" order="5" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive" order="5" weight="1.00" use="optional"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_DepositLiabilityCurrent" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="icfi_RestrictedContractFunds" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="icfi_AccruedTaxesAndInsurancePremiumsCurrent" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent" order="4" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_InterestPayableCurrent" order="5" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedProfessionalFeesCurrent" order="6" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_DividendsPayableCurrent" order="7" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" order="8" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent" order="12" weight="1.00" use="optional"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepositLiabilityCurrent" xlink:label="us-gaap_DepositLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_RestrictedContractFunds" xlink:label="icfi_RestrictedContractFunds"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent" xlink:label="icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedTaxesAndInsurancePremiumsCurrent" xlink:label="icfi_AccruedTaxesAndInsurancePremiumsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent" xlink:label="icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPayableCurrent" xlink:label="us-gaap_InterestPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="us-gaap_AccruedProfessionalFeesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsPayableCurrent" xlink:label="us-gaap_DividendsPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" xlink:label="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables"/>
          <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:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_DebtInstrumentCarryingAmount" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" order="1" weight="-1.00" use="optional"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_DebtInstrumentCarryingAmount" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_DebtInstrumentCarryingAmount" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_DebtInstrumentCarryingAmount" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_DebtInstrumentCarryingAmount" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_DebtInstrumentCarryingAmount" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive" order="4" weight="1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="1" weight="-1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent" xlink:label="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent"/>
          <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:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition" order="4" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" order="5" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" order="6" weight="1" use="optional"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition" xlink:label="icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" order="1" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" order="2" weight="-1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent" xlink:label="us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1" xlink:label="us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="1" weight="1.00" use="optional"/>
          <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: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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="icfi_DirectLaborAndRelatedFringeCosts" order="1" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="icfi_SubcontractorsAndOtherDirectCosts" order="2" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" order="3" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_DepreciationAndAmortization" order="4" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_InterestExpenseNonoperating" order="6" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="7" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_SegmentReportingOtherItemAmount" order="8" weight="-1" use="optional"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_DirectLaborAndRelatedFringeCosts" xlink:label="icfi_DirectLaborAndRelatedFringeCosts"/>
          <link:loc xlink:type="locator" xlink:href="icfi-20250331.xsd#icfi_SubcontractorsAndOtherDirectCosts" xlink:label="icfi_SubcontractorsAndOtherDirectCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
          <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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestExpenseNonoperating" xlink:label="us-gaap_InterestExpenseNonoperating"/>
          <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: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:calculationLink>
      </link:linkbase>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element id="icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome" name="AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_DelayedDrawTermLoanFacilityMember" name="DelayedDrawTermLoanFacilityMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_CMGAcquisitionMember" name="CMGAcquisitionMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_JuneTwentySevenTwoThousandTwentyEightMember" name="JuneTwentySevenTwoThousandTwentyEightMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_RepaymentsOfRestrictedContractFunds" name="RepaymentsOfRestrictedContractFunds" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember" name="MasterReceivablesPurchaseAgreementWithMufgBankMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_CostBasedContractMember" name="CostBasedContractMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities" name="IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_FebruaryTwentyEightTwoThousandTwentyEightMember" name="FebruaryTwentyEightTwoThousandTwentyEightMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember" name="AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_FinanceLeasesTerminationLeaseTerm" name="FinanceLeasesTerminationLeaseTerm" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_InConnectionWithVestingOfRestrictedStockUnitsMember" name="InConnectionWithVestingOfRestrictedStockUnitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_NonEmployeeDirectorStockAwardsMember" name="NonEmployeeDirectorStockAwardsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_CashSettledRSUsMember" name="CashSettledRSUsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_DeferredCompensationPlanLiabilitiesMember" name="DeferredCompensationPlanLiabilitiesMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_BasisOfPresentationAndNatureOfOperationsTable" name="BasisOfPresentationAndNatureOfOperationsTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_PaymentsForShareRepurchasesValue" name="PaymentsForShareRepurchasesValue" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_AugustThirtyFirstTwoThousandTwentyThreeMember" name="AugustThirtyFirstTwoThousandTwentyThreeMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers" name="ContractReceivablesSoldButNotYetCollectedFromCustomers" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock" name="ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts" name="IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition" name="EffectiveIncomeTaxRateReconciliationUncertainTaxPosition" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_ScheduleOfAcquisitionAndDivestitureTable" name="ScheduleOfAcquisitionAndDivestitureTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_TwoHundredMillionShareRepurchaseProgramMember" name="TwoHundredMillionShareRepurchaseProgramMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember" name="AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_ProceedsFromRestrictedContractFunds" name="ProceedsFromRestrictedContractFunds" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_ContractReceivablesAxis" name="ContractReceivablesAxis" type="xbrli:stringItemType" substitutionGroup="xbrldt:dimensionItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_CreditFacilityMember" name="CreditFacilityMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_IntangibleAssetsNetExcludingGoodwillMember" name="IntangibleAssetsNetExcludingGoodwillMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted" name="ProceedsFromSaleOfBilledReceivablesNotYetRemitted" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers" name="BilledContractReceivablesSoldButNotYetCollectedFromCustomers" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_AppliedEnergyGroupIncMember" name="AppliedEnergyGroupIncMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_InitialPerformanceVestingPeriodMember" name="InitialPerformanceVestingPeriodMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_EmployeeStockAwardsMember" name="EmployeeStockAwardsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_InternationalGovernmentMember" name="InternationalGovernmentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_NumberOfOpenStandbyLettersOfCredit" name="NumberOfOpenStandbyLettersOfCredit" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false"/>
  <xsd:element id="icfi_RestructuringAndRelatedCostLineItemsLineItems" name="RestructuringAndRelatedCostLineItemsLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte" name="SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_SaleOfReceivablesLiabilities" name="SaleOfReceivablesLiabilities" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_OmnibusPlanMember" name="OmnibusPlanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_NumberOfOfficeFacilitiesCeasedUse" name="NumberOfOfficeFacilitiesCeasedUse" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_RevenueFromContractWithCustomerLineItems" name="RevenueFromContractWithCustomerLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_CommercialMarketingMember" name="CommercialMarketingMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent" name="AccruedFacilitiesRentalAndLeaseExitCostsCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_SegmentDepreciationAndAmortizationMember" name="SegmentDepreciationAndAmortizationMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_TermLoanMember" name="TermLoanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_BasisOfPresentationAndNatureOfOperationsLineItems" name="BasisOfPresentationAndNatureOfOperationsLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" name="CashCollectedNotYetRemittedToPurchaserOfBilledReceivables" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_MillionShareRepurchaseProgramMember" name="MillionShareRepurchaseProgramMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_LettersOfCreditGuarantees" name="LettersOfCreditGuarantees" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_ProceedsFromSaleOfBilledReceivables" name="ProceedsFromSaleOfBilledReceivables" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent" name="ContractWithCustomerAssetsLiabilitiesNetCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_AccruedOtherFutureLeaseRelatedExpenses" name="AccruedOtherFutureLeaseRelatedExpenses" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_AccruedTaxesAndInsurancePremiumsCurrent" name="AccruedTaxesAndInsurancePremiumsCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_ProceedsFromSaleOfBilledContractReceivables" name="ProceedsFromSaleOfBilledContractReceivables" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_ContractReceivablesDomain" name="ContractReceivablesDomain" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember" name="AccruedExpensesAndOtherCurrentLiabilitiesMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_USStateAndInternationalGovernmentMember" name="USStateAndInternationalGovernmentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_BlantonAndAssociatesMember" name="BlantonAndAssociatesMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_HealthAndSocialProgramsMember" name="HealthAndSocialProgramsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock" name="SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_SemanticBitsLLCMember" name="SemanticBitsLLCMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_LesseeOperatingLeaseTerminationTerm" name="LesseeOperatingLeaseTerminationTerm" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_NonemployeeDirectOrAwardsMember" name="NonemployeeDirectOrAwardsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_DirectLaborAndRelatedFringeCosts" name="DirectLaborAndRelatedFringeCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember" name="EnergyEnvironmentInfrastructureAndDisasterRecoveryMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_AccruedSubcontractorAndOtherDirectCosts" name="AccruedSubcontractorAndOtherDirectCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_SaleOfBilledReceivables" name="SaleOfBilledReceivables" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_CreativeSystemsAndConsultingAcquisitionMember" name="CreativeSystemsAndConsultingAcquisitionMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock" name="SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_SecuredOvernightFinancingRateMember" name="SecuredOvernightFinancingRateMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_CMYAcquisitionMember" name="CMYAcquisitionMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_CommercialMember" name="CommercialMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_SubcontractorsAndOtherDirectCosts" name="SubcontractorsAndOtherDirectCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_ESACAcquisitionMember" name="ESACAcquisitionMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember" name="VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_VestingOfRestrictedStockUnitsMember" name="VestingOfRestrictedStockUnitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_SecurityAndOtherCivilianAndCommercialMember" name="SecurityAndOtherCivilianAndCommercialMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember" name="FebruaryTwentyEightTwoThousandTwentyFiveMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent" name="AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember" name="DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_CMYSolutionsLLCMember" name="CMYSolutionsLLCMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock" name="SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_RestrictedContractFunds" name="RestrictedContractFunds" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_USFederalGovernmentMember" name="USFederalGovernmentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_PaymentsForShareRepurchasesShares" name="PaymentsForShareRepurchasesShares" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_CompanyOwnedLifeInsurancePoliciesMember" name="CompanyOwnedLifeInsurancePoliciesMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_SeveranceChargeExpectedToBePaid" name="SeveranceChargeExpectedToBePaid" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_SignificantSegmentExpensesAbstract" name="SignificantSegmentExpensesAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits" name="IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_USStateAndLocalGovernmentMember" name="USStateAndLocalGovernmentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations" name="IncreaseDecreaseInUnfulfilledPerformanceObligations" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="icfi_AcquisitionAndDivestitureLineItems" name="AcquisitionAndDivestitureLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_RevenueFromContractWithCustomerTable" name="RevenueFromContractWithCustomerTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" name="LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="icfi_AmortizationOfIntangibleAsset" name="AmortizationOfIntangibleAsset" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>8
<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>Document And Entity Information - 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. 25, 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">ICF International, 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">0001362004<span></span>
</td>
<td class="text">&#160;<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_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">ICFI<span></span>
</td>
<td class="text">&#160;<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_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<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_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<span></span>
</td>
<td class="text">&#160;<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_EntitySmallBusiness', window );">Entity Small Business</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_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18,411,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_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<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="ro">
<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="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_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_EntityShellCompany', window );">Entity Shell 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_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-33045<span></span>
</td>
<td class="text">&#160;<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_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">22-3661438<span></span>
</td>
<td class="text">&#160;<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_EntityIncorporationStateCountryCode', window );">Entity Incorporation State Country Code</a></td>
<td class="text">DE<span></span>
</td>
<td class="text">&#160;<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 One</a></td>
<td class="text">1902 Reston Metro Plaza<span></span>
</td>
<td class="text">&#160;<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_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Reston<span></span>
</td>
<td class="text">&#160;<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_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">VA<span></span>
</td>
<td class="text">&#160;<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_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">20190<span></span>
</td>
<td class="text">&#160;<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_CityAreaCode', window );">City Area Code</a></td>
<td class="text">703<span></span>
</td>
<td class="text">&#160;<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_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">934-3000<span></span>
</td>
<td class="text">&#160;<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_Security12bTitle', window );">Title of each class</a></td>
<td class="text">Common Stock<span></span>
</td>
<td class="text">&#160;<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_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</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_DocumentQuarterlyReport', window );">Document Quarterly Report</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_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Exchange on which a security is registered.</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 d1-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_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="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_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>9
<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>CONSOLIDATED BALANCE SHEETS (UNAUDITED) - 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_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 5,718<span></span>
</td>
<td class="nump">$ 4,960<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestrictedCashCurrent', window );">Restricted cash</a></td>
<td class="nump">18,374<span></span>
</td>
<td class="nump">13,857<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_AccountsReceivableNetCurrent', window );">Contract receivables, net</a></td>
<td class="nump">236,161<span></span>
</td>
<td class="nump">256,923<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Contract assets</a></td>
<td class="nump">228,314<span></span>
</td>
<td class="nump">188,941<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_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other assets</a></td>
<td class="nump">21,189<span></span>
</td>
<td class="nump">21,133<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesReceivable', window );">Income tax receivable</a></td>
<td class="nump">1,073<span></span>
</td>
<td class="nump">6,260<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">510,829<span></span>
</td>
<td class="nump">492,074<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">63,569<span></span>
</td>
<td class="nump">66,503<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_OtherAssetsAbstract', window );"><strong>Other Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">1,251,199<span></span>
</td>
<td class="nump">1,248,855<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_IntangibleAssetsNetExcludingGoodwill', window );">Other intangible assets, net</a></td>
<td class="nump">102,617<span></span>
</td>
<td class="nump">111,701<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_OperatingLeaseRightOfUseAsset', window );">Operating lease - right-of-use assets</a></td>
<td class="nump">112,954<span></span>
</td>
<td class="nump">115,531<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_DeferredIncomeTaxAssetsNet', window );">Deferred income taxes</a></td>
<td class="nump">4,113<span></span>
</td>
<td class="nump">1,603<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_OtherAssetsNoncurrent', window );">Other assets</a></td>
<td class="nump">29,817<span></span>
</td>
<td class="nump">30,086<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_Assets', window );">Total Assets</a></td>
<td class="nump">2,075,098<span></span>
</td>
<td class="nump">2,066,353<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_LiabilitiesCurrentAbstract', window );"><strong>Current Liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">122,089<span></span>
</td>
<td class="nump">159,522<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">27,407<span></span>
</td>
<td class="nump">24,580<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_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities</a></td>
<td class="nump">19,792<span></span>
</td>
<td class="nump">20,721<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 lease liabilities</a></td>
<td class="nump">2,635<span></span>
</td>
<td class="nump">2,612<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 salaries and benefits</a></td>
<td class="nump">75,533<span></span>
</td>
<td class="nump">105,773<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_icfi_AccruedSubcontractorAndOtherDirectCosts', window );">Accrued subcontractors and other direct costs</a></td>
<td class="nump">51,876<span></span>
</td>
<td class="nump">49,271<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_AccruedLiabilitiesAndOtherLiabilities', window );">Accrued expenses and other current liabilities</a></td>
<td class="nump">82,195<span></span>
</td>
<td class="nump">86,701<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_LiabilitiesCurrent', window );">Total Current Liabilities</a></td>
<td class="nump">381,527<span></span>
</td>
<td class="nump">449,180<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_LiabilitiesNoncurrentAbstract', window );"><strong>Long-term 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_LongTermDebtNoncurrent', window );">Long-term debt</a></td>
<td class="nump">502,044<span></span>
</td>
<td class="nump">411,743<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 - non-current</a></td>
<td class="nump">152,128<span></span>
</td>
<td class="nump">155,935<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_FinanceLeaseLiabilityNoncurrent', window );">Finance lease liabilities - non-current</a></td>
<td class="nump">10,593<span></span>
</td>
<td class="nump">11,261<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_OtherLiabilitiesNoncurrent', window );">Other long-term liabilities</a></td>
<td class="nump">59,938<span></span>
</td>
<td class="nump">55,775<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">1,106,230<span></span>
</td>
<td class="nump">1,083,894<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_CommitmentsAndContingencies', window );">Commitments and Contingencies (Note 14)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Stockholders&#8217; Equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 $.001; 5,000,000 shares authorized; none issued</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, par value $.001; 70,000,000 shares authorized; 24,302,825 and 24,186,962 shares issued at March 31, 2025 and December 31, 2024, respectively; 18,426,295 and 18,666,290 shares outstanding at March 31, 2025 and December 31, 2024, respectively</a></td>
<td class="nump">24<span></span>
</td>
<td class="nump">24<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_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">447,649<span></span>
</td>
<td class="nump">443,463<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_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">899,051<span></span>
</td>
<td class="nump">874,772<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_TreasuryStockValue', window );">Treasury stock, 5,876,530 and 5,520,672 shares at March 31, 2025 and December 31, 2024, respectively</a></td>
<td class="num">(359,397)<span></span>
</td>
<td class="num">(320,054)<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 loss</a></td>
<td class="num">(18,459)<span></span>
</td>
<td class="num">(15,746)<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&#8217; Equity</a></td>
<td class="nump">968,868<span></span>
</td>
<td class="nump">982,459<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&#8217; Equity</a></td>
<td class="nump">$ 2,075,098<span></span>
</td>
<td class="nump">$ 2,066,353<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_AccruedSubcontractorAndOtherDirectCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents accrued subcontractor and other direct costs.</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;">icfi_AccruedSubcontractorAndOtherDirectCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_AccruedLiabilitiesAndOtherLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 nor invoiced, and liabilities 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_AccruedLiabilitiesAndOtherLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.</p></div>
<a href="javascript:void(0);" onclick="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)(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_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="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(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/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<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_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="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(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-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(25))<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 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(19))<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 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(15))<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_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_ContractWithCustomerAssetNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 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_ContractWithCustomerAssetNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="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 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-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_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_IncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes.</p></div>
<a href="javascript:void(0);" onclick="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(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-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(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_IncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_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_LiabilitiesNoncurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LiabilitiesNoncurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 classified as noncurrent. Excludes lease 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 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<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_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_OtherAssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherAssetsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 classified as other, due after 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(24))<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_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 that are expected to be realized or consumed 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(9))<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_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_RestrictedCashCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 restricted as to withdrawal or usage, classified as current. 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.</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(1))<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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCashCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.</p></div>
<a href="javascript:void(0);" onclick="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> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-4<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-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_TreasuryStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<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>CONSOLIDATED BALANCE SHEETS (UNAUDITED) (Parenthetical) - $ / shares<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_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value (in dollars per share)</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, shares authorized (in shares)</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, shares issued (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</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 (in shares)</a></td>
<td class="nump">70,000,000<span></span>
</td>
<td class="nump">70,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 (in shares)</a></td>
<td class="nump">24,302,825<span></span>
</td>
<td class="nump">24,186,962<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 (in shares)</a></td>
<td class="nump">18,426,295<span></span>
</td>
<td class="nump">18,666,290<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_TreasuryStockCommonShares', window );">Treasury stock, shares (in shares)</a></td>
<td class="nump">5,876,530<span></span>
</td>
<td class="nump">5,520,672<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockCommonShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 previously issued common shares repurchased by the issuing entity and held in 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> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-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_TreasuryStockCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<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>CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (UNAUDITED) - USD ($)<br> shares in Thousands, $ 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>Income Statement [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_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 487,618<span></span>
</td>
<td class="nump">$ 494,436<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_CostOfGoodsAndServicesSold', window );">Direct costs</a></td>
<td class="nump">302,542<span></span>
</td>
<td class="nump">310,533<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 costs and 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_SellingGeneralAndAdministrativeExpense', window );">Indirect and selling expenses</a></td>
<td class="nump">131,891<span></span>
</td>
<td class="nump">129,094<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">14,795<span></span>
</td>
<td class="nump">13,865<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 costs and expenses</a></td>
<td class="nump">146,686<span></span>
</td>
<td class="nump">142,959<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 );">Operating income</a></td>
<td class="nump">38,390<span></span>
</td>
<td class="nump">40,944<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, net</a></td>
<td class="num">(7,337)<span></span>
</td>
<td class="num">(8,238)<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 (expense) income</a></td>
<td class="num">(1,052)<span></span>
</td>
<td class="nump">1,630<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">30,001<span></span>
</td>
<td class="nump">34,336<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">3,150<span></span>
</td>
<td class="nump">7,019<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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 26,851<span></span>
</td>
<td class="nump">$ 27,317<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per Share:</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_EarningsPerShareBasic', window );">Basic</a></td>
<td class="nump">$ 1.45<span></span>
</td>
<td class="nump">$ 1.46<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted</a></td>
<td class="nump">$ 1.44<span></span>
</td>
<td class="nump">$ 1.44<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 Shares:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic</a></td>
<td class="nump">18,506<span></span>
</td>
<td class="nump">18,757<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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted</a></td>
<td class="nump">18,613<span></span>
</td>
<td class="nump">18,946<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_CommonStockDividendsPerShareDeclared', window );">Cash dividends declared per common share</a></td>
<td class="nump">$ 0.14<span></span>
</td>
<td class="nump">$ 0.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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive (loss) income, net of tax</a></td>
<td class="num">$ (2,713)<span></span>
</td>
<td class="nump">$ 684<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, net of tax</a></td>
<td class="nump">$ 24,138<span></span>
</td>
<td class="nump">$ 28,001<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockDividendsPerShareDeclared">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 dividends declared during the period for each share of common stock outstanding.</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 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_CommonStockDividendsPerShareDeclared</td>
</tr>
<tr>
<td style="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_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_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="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(2)(d))<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(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_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_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_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_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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 other comprehensive income (loss) attributable to parent 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 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 4: 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 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 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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="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_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="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_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>12
<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="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>Retained Earnings</div></th>
<th class="th"><div>Treasury Stock</div></th>
<th class="th"><div>Accumulated Other Comprehensive Loss</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_StockholdersEquity', window );">Balance at Dec. 31, 2023</a></td>
<td class="nump">$ 917,585<span></span>
</td>
<td class="nump">$ 24<span></span>
</td>
<td class="nump">$ 421,502<span></span>
</td>
<td class="nump">$ 775,099<span></span>
</td>
<td class="num">$ (267,155)<span></span>
</td>
<td class="num">$ (11,885)<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 (in shares) at Dec. 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18,846,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in shares) at Dec. 31, 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>
<td class="nump">5,136,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income (Loss)</a></td>
<td class="nump">27,317<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">27,317<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="nump">684<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">684<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Equity compensation</a></td>
<td class="nump">3,551<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,551<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Exercise of stock options</a></td>
<td class="nump">107<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">107<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercise of stock options (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures', window );">Issuance of shares pursuant to vesting of restricted stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">125,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_icfi_PaymentsForShareRepurchasesValue', window );">Payments for share repurchases</a></td>
<td class="num">(30,475)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (30,475)<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_icfi_PaymentsForShareRepurchasesShares', window );">Payments for share repurchases (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(218,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">218,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStockCash', window );">Dividends declared</a></td>
<td class="num">(2,620)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,620)<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 at Mar. 31, 2024</a></td>
<td class="nump">916,149<span></span>
</td>
<td class="nump">$ 24<span></span>
</td>
<td class="nump">425,160<span></span>
</td>
<td class="nump">799,796<span></span>
</td>
<td class="num">$ (297,630)<span></span>
</td>
<td class="num">(11,201)<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 (in shares) at Mar. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18,755,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in shares) at Mar. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,354,000<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 at Dec. 31, 2024</a></td>
<td class="nump">$ 982,459<span></span>
</td>
<td class="nump">$ 24<span></span>
</td>
<td class="nump">443,463<span></span>
</td>
<td class="nump">874,772<span></span>
</td>
<td class="num">$ (320,054)<span></span>
</td>
<td class="num">(15,746)<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 (in shares) at Dec. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18,666,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in shares) at Dec. 31, 2024</a></td>
<td class="nump">5,520,672<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,520,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income (Loss)</a></td>
<td class="nump">$ 26,851<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">26,851<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="num">(2,713)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,713)<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 );">Equity compensation</a></td>
<td class="nump">4,186<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,186<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures', window );">Issuance of shares pursuant to vesting of restricted stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">116,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_icfi_PaymentsForShareRepurchasesValue', window );">Payments for share repurchases</a></td>
<td class="num">(39,343)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (39,343)<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_icfi_PaymentsForShareRepurchasesShares', window );">Payments for share repurchases (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(356,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">356,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStockCash', window );">Dividends declared</a></td>
<td class="num">(2,572)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,572)<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 at Mar. 31, 2025</a></td>
<td class="nump">$ 968,868<span></span>
</td>
<td class="nump">$ 24<span></span>
</td>
<td class="nump">$ 447,649<span></span>
</td>
<td class="nump">$ 899,051<span></span>
</td>
<td class="num">$ (359,397)<span></span>
</td>
<td class="num">$ (18,459)<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 (in shares) at Mar. 31, 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18,426,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in shares) at Mar. 31, 2025</a></td>
<td class="nump">5,876,530<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,876,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_icfi_PaymentsForShareRepurchasesShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments for share repurchases shares.</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;">icfi_PaymentsForShareRepurchasesShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</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_icfi_PaymentsForShareRepurchasesValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments for share repurchases value.</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;">icfi_PaymentsForShareRepurchasesValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_DividendsCommonStockCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 paid and unpaid common stock dividends declared with the form of settlement in cash.</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 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_DividendsCommonStockCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 other comprehensive income (loss) attributable to parent 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 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 4: 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 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 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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 during the period related to Restricted Stock Awards, net of any shares forfeited.</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://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_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures</td>
</tr>
<tr>
<td style="padding-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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockCommonShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 previously issued common shares repurchased by the issuing entity and held in 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> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-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_TreasuryStockCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<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="2"><div style="width: 200px;"><strong>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_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 26,851<span></span>
</td>
<td class="nump">$ 27,317<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 to net cash provided by operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 for credit losses</a></td>
<td class="num">(92)<span></span>
</td>
<td class="nump">1,347<span></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_icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits', window );">Deferred income taxes and unrecognized income tax benefits</a></td>
<td class="num">(2,594)<span></span>
</td>
<td class="num">(4,786)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Non-cash equity compensation</a></td>
<td class="nump">4,186<span></span>
</td>
<td class="nump">3,551<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_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">14,795<span></span>
</td>
<td class="nump">13,865<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_GainLossOnSaleOfBusiness', window );">Gain on divestiture of a business</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,715)<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 );">Other operating adjustments, net</a></td>
<td class="nump">1,435<span></span>
</td>
<td class="nump">46<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities, net of the effects of acquisitions:</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_IncreaseDecreaseInCommodityContractAssetsAndLiabilities', window );">Net contract assets and liabilities</a></td>
<td class="num">(34,610)<span></span>
</td>
<td class="num">(29,024)<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_IncreaseDecreaseInReceivables', window );">Contract receivables</a></td>
<td class="nump">21,340<span></span>
</td>
<td class="nump">1,604<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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other assets</a></td>
<td class="num">(1,314)<span></span>
</td>
<td class="num">(192)<span></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_icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities', window );">Operating lease assets and liabilities, net</a></td>
<td class="num">(1,862)<span></span>
</td>
<td class="nump">523<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_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="num">(37,674)<span></span>
</td>
<td class="num">(15,119)<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_IncreaseDecreaseInEmployeeRelatedLiabilities', window );">Accrued salaries and benefits</a></td>
<td class="num">(30,465)<span></span>
</td>
<td class="num">(17,775)<span></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_icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts', window );">Accrued subcontractors and other direct costs</a></td>
<td class="nump">2,064<span></span>
</td>
<td class="nump">3,303<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_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities', window );">Accrued expenses and other current liabilities</a></td>
<td class="nump">80<span></span>
</td>
<td class="num">(3,988)<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_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable', window );">Income tax receivable and payable</a></td>
<td class="nump">5,235<span></span>
</td>
<td class="nump">11,375<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_IncreaseDecreaseInOtherOperatingLiabilities', window );">Other liabilities</a></td>
<td class="num">(409)<span></span>
</td>
<td class="num">(333)<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_NetCashProvidedByUsedInOperatingActivities', window );">Net Cash Used in Operating Activities</a></td>
<td class="num">(33,034)<span></span>
</td>
<td class="num">(10,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_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash Flows from Investing Activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireProductiveAssets', window );">Payments for purchase of property and equipment and capitalized software</a></td>
<td class="num">(3,452)<span></span>
</td>
<td class="num">(5,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_ProceedsFromDivestitureOfBusinesses', window );">Proceeds from divestiture of a business</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,715<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 Used in Investing Activities</a></td>
<td class="num">(3,452)<span></span>
</td>
<td class="num">(3,511)<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_ProceedsFromBankDebt', window );">Advances from working capital facilities</a></td>
<td class="nump">512,430<span></span>
</td>
<td class="nump">355,877<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_RepaymentsOfLongTermDebt', window );">Payments on working capital facilities</a></td>
<td class="num">(422,406)<span></span>
</td>
<td class="num">(311,813)<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_ProceedsFromOtherShortTermDebt', window );">Proceeds from other short-term borrowings</a></td>
<td class="nump">2,780<span></span>
</td>
<td class="nump">24,356<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_RepaymentsOfOtherShortTermDebt', window );">Repayments of other short-term borrowings</a></td>
<td class="num">(9,172)<span></span>
</td>
<td class="num">(23,950)<span></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_icfi_ProceedsFromRestrictedContractFunds', window );">Receipt of restricted contract funds</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,261<span></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_icfi_RepaymentsOfRestrictedContractFunds', window );">Payment of restricted contract funds</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(3,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_PaymentsOfDividendsCommonStock', window );">Dividends paid</a></td>
<td class="num">(2,620)<span></span>
</td>
<td class="num">(2,636)<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_PaymentsForRepurchaseOfEquity', window );">Net payments for stock issuances and share repurchases</a></td>
<td class="num">(39,342)<span></span>
</td>
<td class="num">(30,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_ProceedsFromPaymentsForOtherFinancingActivities', window );">Other financing, net</a></td>
<td class="num">(646)<span></span>
</td>
<td class="num">(516)<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_NetCashProvidedByUsedInFinancingActivities', window );">Net Cash Provided by Financing Activities</a></td>
<td class="nump">41,024<span></span>
</td>
<td class="nump">8,833<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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Effect of Exchange Rate Changes on Cash, Cash Equivalents, and Restricted Cash</a></td>
<td class="nump">737<span></span>
</td>
<td class="num">(171)<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net Change in Cash, Cash Equivalents, and Restricted Cash</a></td>
<td class="nump">5,275<span></span>
</td>
<td class="num">(4,850)<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash, Cash Equivalents, and Restricted Cash, Beginning of Period</a></td>
<td class="nump">18,817<span></span>
</td>
<td class="nump">9,449<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash, Cash Equivalents, and Restricted Cash, End of Period</a></td>
<td class="nump">24,092<span></span>
</td>
<td class="nump">4,599<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_SupplementalCashFlowInformationAbstract', window );"><strong>Supplemental Disclosure of Cash Flow Information</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest</a></td>
<td class="nump">4,544<span></span>
</td>
<td class="nump">7,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_IncomeTaxesPaid', window );">Income taxes</a></td>
<td class="nump">$ 1,095<span></span>
</td>
<td class="nump">$ 1,133<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase Decrease in accrued subcontractor and other direct costs.</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;">icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase (decrease) in deferred income taxes and unrecognized income tax benefits.</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;">icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase (decrease) in operating lease 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;">icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_icfi_ProceedsFromRestrictedContractFunds">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from restricted contract funds.</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;">icfi_ProceedsFromRestrictedContractFunds</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_icfi_RepaymentsOfRestrictedContractFunds">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Repayments of restricted contract funds.</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;">icfi_RepaymentsOfRestrictedContractFunds</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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; including, but not limited to, 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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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; including, but not limited to, 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/2009/role/commonPracticeRef<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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_GainLossOnSaleOfBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 gain (loss) from sale and disposal of integrated set of activities and assets capable of being conducted and managed for purpose of providing return in form of dividend, lower cost, or other economic benefit to investor, owner, member and participant.</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 (b)<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/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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/2009/role/commonPracticeRef<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/2009/role/commonPracticeRef<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/2009/role/commonPracticeRef<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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br><br>Reference 5: 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_IncomeTaxesPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="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_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accrued expenses, and obligations 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/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_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_IncreaseDecreaseInCommodityContractAssetsAndLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets (liabilities) created through trading commodity-based derivative instruments.</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_IncreaseDecreaseInCommodityContractAssetsAndLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInEmployeeRelatedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits.</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_IncreaseDecreaseInEmployeeRelatedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amounts payable to taxing authorities for taxes that are based on the reporting entity's earnings, net of amounts receivable from taxing authorities for refunds of overpayments or recoveries of income taxes.</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_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_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_IncreaseDecreaseInOtherOperatingLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 liabilities 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_IncreaseDecreaseInOtherOperatingLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 prepaid expenses, and 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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 total amount due within one year (or one operating cycle) from all parties, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="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_IncreaseDecreaseInReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_PaymentsForRepurchaseOfEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to reacquire 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://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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br><br>Reference 2: 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(i)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-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_PaymentsForRepurchaseOfEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PaymentsOfDividendsCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 in the form of ordinary dividends to common shareholders of the parent 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 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<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_PaymentsOfDividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PaymentsToAcquireProductiveAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 purchases of and capital improvements on property, plant and equipment (capital expenditures), software, and other 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 805<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480060/805-50-25-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480027/805-50-30-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480027/805-50-30-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 230<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_PaymentsToAcquireProductiveAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromBankDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 inflow from bank borrowing during the year.</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 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-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_ProceedsFromBankDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ProceedsFromDivestitureOfBusinesses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 inflow associated with the amount received from the sale of a portion of the company's business, for example a segment, division, branch or other business, during 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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-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_ProceedsFromDivestitureOfBusinesses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ProceedsFromOtherShortTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 short-term debt 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> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-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_ProceedsFromOtherShortTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ProceedsFromPaymentsForOtherFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -SubTopic 10<br> -Topic 230<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_ProceedsFromPaymentsForOtherFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="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://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/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 9: 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 10: 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 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-3<br><br>Reference 13: 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 14: 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(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 15: 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 16: 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 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: 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 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)(iii)(A))<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)(4)(iv))<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 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 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)(i))<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)(A))<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)(iii)(B))<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)(4)(iv))<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)(5))<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 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 30: 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 31: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4J<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4J<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4K<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4K<br><br>Reference 33: 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 34: 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 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-2<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-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_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_RepaymentsOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 debt initially having maturity due after 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> -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><br>Reference 2: 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(i)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-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_RepaymentsOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfOtherShortTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the payment of debt classified as other, maturing 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 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_RepaymentsOfOtherShortTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<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>Pay vs Performance Disclosure - 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_ecd_PvpTable', window );"><strong>Pay vs Performance Disclosure</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">$ 26,851<span></span>
</td>
<td class="nump">$ 27,317<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_PvpTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 402<br> -Subsection v<br> -Paragraph 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;">ecd_PvpTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<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>Insider Trading Arrangements<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_ecd_TradingArrByIndTable', window );"><strong>Trading Arrangements, by Individual</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_ecd_Rule10b51ArrAdoptedFlag', window );">Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">false<span></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_ecd_NonRule10b51ArrAdoptedFlag', window );">Non-Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">false<span></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_ecd_Rule10b51ArrTrmntdFlag', window );">Rule 10b5-1 Arrangement Terminated</a></td>
<td class="text">false<span></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_ecd_NonRule10b51ArrTrmntdFlag', window );">Non-Rule 10b5-1 Arrangement Terminated</a></td>
<td class="text">false<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_NonRule10b51ArrAdoptedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_NonRule10b51ArrAdoptedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_NonRule10b51ArrTrmntdFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_NonRule10b51ArrTrmntdFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_Rule10b51ArrAdoptedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_Rule10b51ArrAdoptedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_Rule10b51ArrTrmntdFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_Rule10b51ArrTrmntdFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_TradingArrByIndTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 2<br> -Subparagraph 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;">ecd_TradingArrByIndTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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>Basis of Presentation<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_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Organization, Consolidation and Presentation of Financial Statements [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock', window );">Basis of Presentation</a></td>
<td class="text"><p id="note_1_nature_operations_basis_presentat" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 1 &#8211; BASIS OF PRESENTATION</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Basis of Presentation</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The accompanying consolidated financial statements are of ICF International, Inc. (&#8220;ICFI&#8221;) and its principal subsidiary, ICF Consulting Group, Inc. (&#8220;Consulting,&#8221; and together with ICFI, the &#8220;Company&#8221;), and have been prepared in accordance with United States (&#8220;U.S.&#8221;) generally accepted accounting principles (&#8220;U.S. GAAP&#8221;). Consulting is a wholly owned subsidiary of ICFI. ICFI is a holding company with no operations or assets other than its investment in the common stock of Consulting. All other subsidiaries of the Company are wholly owned by Consulting. Intercompany transactions and balances have been eliminated. The terms &#8220;federal&#8221; or &#8220;federal government&#8221; refer to the U.S. federal government, and &#8220;state and local&#8221; or &#8220;state and local government&#8221; refer to U.S. state (including territories) and local governments, unless otherwise indicated.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Software assets, which were previously included within &#8220;Property and equipment, net&#8221; and &#8220;Other assets&#8221;, have been reclassified and consolidated under &#8220;Other intangible assets, net.&#8221; To conform to the current year&#8217;s presentation, $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, as of December 31, 2024, have been reclassified from &#8220;Property and equipment, net&#8221; and &#8220;Other assets&#8221; to &#8220;Other intangible assets, net,&#8221; respectively.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Previously separate financial statement line items &#8220;Depreciation and amortization&#8221; and &#8220;Amortization of intangible assets&#8221; have been combined under &#8220;Depreciation and amortization&#8221;.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Use of Estimates</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and the reported amounts of revenue and expenses. Key estimates include those that are related to variable consideration on contracts with customers, costs to complete fixed-price contracts, bonus and other incentive compensation, reserves for tax benefits and valuation allowances on deferred tax assets, collectability of receivables, valuation and useful lives of acquired tangible and intangible assets, impairment of goodwill and long-lived assets, and contingencies. Actual results experienced by the Company may differ from management&#8217;s estimates.</span></p></div><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Interim Results</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The unaudited consolidated financial statements included in this Quarterly Report on Form 10-Q have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the &#8220;SEC&#8221;). These rules and regulations permit some of the information and footnote disclosures normally included in annual financial statements, prepared in accordance with U.S. GAAP, to be condensed or omitted. In management&#8217;s opinion, the unaudited consolidated financial statements contain all adjustments that are of a normal recurring nature, necessary for a fair presentation of the results of operations and financial position of the Company for the interim periods presented. The Company reports operating results and financial data in </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">one</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> operating segment and reporting unit. Operating results for the three-month period ended </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024 are not necessarily indicative of the results that may be expected for the full year. These unaudited consolidated financial statements should be read in conjunction with the audited consolidated financial statements for the fiscal year ended December 31, 2024 and the notes thereto included in the Company&#8217;s Annual Report on Form 10-K.</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Recent Accounting Pronouncements</span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Recent Accounting Pronouncements Not Yet Adopted</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Income Taxes</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In December 2023, the Financial Accounting Standards Board (the &#8220;FASB&#8221;) issued Accounting Standards Update (&#8220;ASU&#8221;) 2023-09, Income Taxes: Improvements to Income Tax Disclosures (&#8220;ASU 2023-09&#8221;), which requires greater disaggregation of income tax rates and amounts paid by entities. ASU 2023-09 specifically requires all entities to disclose, on an annual basis, disaggregated domestic and foreign pre-tax income or loss from continuing operations and the disaggregated income tax expense or benefit by federal, state, and foreign components, and a tabular rate reconciliation, using both percentages and reporting currency amounts, of eight specific categories as well as any individual reconciling items that are equal to or greater than 5% of a threshold computed by multiplying pretax income or loss from continuing operations by the applicable federal rate. Additionally, the amendments also require disclosure of income taxes paid disaggregated by federal, state, and foreign jurisdictions as well as any individual jurisdictions over 5% of the total income taxes paid. ASU 2023-09 will be effective for the Company for the fiscal year ending December 31, 2025, with early adoption permitted. The amendments may be adopted on a prospective or retrospective basis. The Company is expected to adopt the provisions of ASU 2023-09 for the fiscal year ending December 31, 2025 and, with the exception of additional footnote disclosures, does not expect the adoption to have any impact on the consolidated financial statements.</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Income Statement&#8212;Reporting Comprehensive Income&#8212;Expense Disaggregation Disclosures</span></p><p style="text-indent:6.667%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In November 2024, the FASB issued ASU 2024-03: Disaggregation of Income Statement Expenses (&#8220;ASU 2024-03&#8221;), which requires additional disaggregation of certain costs and expenses. ASU 2024-03 specifically requires all public entities to disclose within a tabular format the amounts of (a) purchases of inventory, (b) employee compensation, (c) depreciation, (d) intangible asset amortization, and (e) depreciation, depletion, and amortization recognized as part of oil- and gas-producing activities in each relevant expense caption as well as certain amounts that are already required to be disclosed under current U.S. GAAP. ASU 2024-03 also requires public entities to disclose a qualitative description of the composition of any amounts in relevant expense captions that are not separately disaggregated and the amount and definition of the entity&#8217;s selling expenses. ASU 2024-03 will be effective for the Company for the 2027 fiscal year and interim periods within the 2028 fiscal year, with early adoption permitted. The amendments may be adopted on a prospective or retrospective basis. The Company is currently evaluating the impact of the adoption of ASU 2024-03 and, with the exception of additional footnote disclosures, does not expect the adoption to have a material impact on the consolidated financial statements.</span></p></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 organization, consolidation and basis of presentation of financial statements 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/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480424/946-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480424/946-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/810/tableOfContent<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/205/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_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>17
<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>Restricted Cash<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_CashAndCashEquivalentsAbstract', window );"><strong>Cash and Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsDisclosureTextBlock', window );">Restricted Cash</a></td>
<td class="text"><p id="note_2_restricted_cash" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 2 &#8211; RESTRICTED CASH</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table provides a reconciliation of cash, cash equivalents, and restricted cash as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024 to cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows for the three months ended March 31, 2025 and 2024:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:48.55%;box-sizing:content-box;"></td>
         <td style="width:2.701%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:21.023999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.701%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:21.023999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash and cash equivalents</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,718</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,683</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Restricted cash</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,374</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">916</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total of cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24,092</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,599</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Restricted cash represents is primarily related to the Company&#8217;s energy incentive business with public utility clients and include restricted cash from the acquisition of Applied Energy Group, Inc. (&#8220;AEG&#8221;).</span></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_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cash and cash equivalent footnotes, which may include the types of deposits and money market instruments, applicable carrying amounts, restricted amounts and compensating balance arrangements. Cash and equivalents include: (1) currency on hand (2) demand deposits with banks or financial institutions (3) other kinds of accounts that have the general characteristics of demand deposits (4) 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. Generally, only investments maturing within three months from the date of acquisition qualify.</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(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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>18
<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>Contract Receivables, Net<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_ReceivablesAbstract', window );"><strong>Receivables [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock', window );">Contract Receivables, Net</a></td>
<td class="text"><p id="note_3_contract_receivables_net" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 3 &#8211; CONTRACT RECEIVABLES, NET</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Contract receivables, net consisted of the following:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:59.76%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.439999999999998%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.479999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Billed and billable</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">242,652</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">263,624</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Allowance for expected credit losses</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,491</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,701</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract receivables, net</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">236,161</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">256,923</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company sells certain billed contract receivables in accordance with its Master Receivables Purchase Agreement with MUFG Bank, Ltd. (&#8220;MUFG&#8221;). </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following is a reconciliation of billed contract receivables sold to MUFG that were eligible and accounted for as sales under Accounting Standards Codification (&#8220;ASC&#8221;) 860, including billed contract receivables sold to MUFG and collected from customers on behalf of MUFG during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, and the balance of billed contract receivables not collected from customers as of March 31, 2025 and 2024, respectively:</span></span></p><div style="font-size:10pt;font-family:Times New Roman;">
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:58%;box-sizing:content-box;"></td>
         <td style="width:5%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:19.18%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:3%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:10.82%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">As of and for the Three Months Ended</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, billed contract receivables sold and not yet collected </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25,966</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21,302</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Billed contract receivables sold during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">123,685</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">133,398</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Collections from customers during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">118,472</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129,824</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, billed contract receivables sold and not yet collected </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(3)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">31,179</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24,876</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The beginning balances represent billed contract receivables that were previously sold and derecognized by the Company but had not been collected from customers as of January 1, </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.2</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.6</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the sale of billed contract receivables.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The ending balances represent billed contract receivables that were sold and derecognized by the Company but had not been collected from customers as of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></div></div></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following is a reconciliation of cash collections from customers of billed contract receivables previously sold to MUFG that were eligible and accounted for as sales under ASC 860, including collections from customers on behalf of MUFG of previously sold billed contract receivables and remittances of cash collections to MUFG during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, and the balance of cash collected but not remitted to MUFG as of March 31, 2025 and 2024, respectively:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:53.551%;box-sizing:content-box;"></td>
         <td style="width:2.3%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:15.203000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.3%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:22.645%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">As of and for the Three Months Ended</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, cash collected but not yet remitted to MUFG </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,339</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21,796</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Collections from customers during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">118,472</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129,824</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Remittances to MUFG during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">112,970</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">125,879</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, cash collected but not yet remitted to MUFG </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(3)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">28,841</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25,741</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The beginning balances represent cash collected from customers on behalf of MUFG for billed contract receivables that were previously sold and derecognized by the Company but had not been remitted to MUFG as of January 1, </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.5</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.9</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the collection of billed contract receivables that were sold but not yet remitted to MUFG.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The ending balances are included as part of &#8220;Accrued expenses and other current liabilities&#8221; on the Company&#8217;s consolidated balance sheets.</span></div></div></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The aggregate impact of the sale of billed contract receivables on the Company&#8217;s operating cash flows was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the three months ended March 31, 2025 and 2024, respectively.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At March 31, 2025 and December 31, 2024, the amounts due to MUFG for cash collected and not yet remitted for billed contract receivables sold that did not qualify as sales under ASC 860 totaled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively. These amounts are included as part of &#8220;Accrued expenses and other current liabilities&#8221; on the Company&#8217;s consolidated balance sheets.</span></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_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 claims held for amounts due to entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes 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://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/310-10/tableOfContent<br><br>Reference 2: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>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>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 [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">Leases</a></td>
<td class="text"><p id="note_4_leases" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 4 &#8211; LEASES</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At March 31, 2025</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, the Company had operating and finance leases for facilities and equipment with remaining terms ranging from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">1</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">14 years</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. </span><span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Future minimum lease payments under non-cancellable operating and finance leases as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 were as follows:</span></span></p><div style="font-size:12pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:59.832%;box-sizing:content-box;"></td>
         <td style="width:1.78%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.302999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.78%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.302999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Operating</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Finance</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2026</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25,144</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,041</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2027</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,158</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,041</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 30, 2028</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">17,511</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,041</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 30, 2029</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,934</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,967</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2030</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,220</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,224</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Thereafter</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">114,872</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total future minimum lease payments</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">208,839</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,314</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Less: Interest</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">36,919</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,086</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total lease liabilities</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">171,920</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,228</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Lease liabilities - current</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">19,792</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,635</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Lease liabilities - non-current</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">152,128</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10,593</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total lease liabilities</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">171,920</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,228</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>20
<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>Debt<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>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">Debt</a></td>
<td class="text"><p id="note_5_debt" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 5 &#8211; DEBT</span></p><div style="font-size:11pt;font-family:'Calibri',sans-serif;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and December 31, 2024, debt consisted of:</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.493%;box-sizing:content-box;"></td>
         <td style="width:1.8%;box-sizing:content-box;"></td>
         <td style="width:17.756%;box-sizing:content-box;"></td>
         <td style="width:1.8%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:15.217%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.8%;box-sizing:content-box;"></td>
         <td style="width:10.598%;box-sizing:content-box;"></td>
         <td style="width:1.8%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:8.738000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="4" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="4" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Average<br/>Interest Rate</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Outstanding<br/>Balance</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Average<br/>Interest Rate</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Outstanding<br/>Balance</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Term Loan</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">200,250</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">200,250</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Delayed-Draw Term Loan</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">154,000</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">156,750</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Revolving Credit</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">150,000</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">57,225</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total before debt issuance costs</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.7</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">504,250</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.6</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">414,225</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Unamortized debt issuance costs</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,206</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,482</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">502,044</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">411,743</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:48.8%;box-sizing:content-box;"></td>
         <td style="width:2.22%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:21.84%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.22%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:20.919999999999998%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Current portion of long-term debt</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Long-term debt - non-current</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">502,044</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">411,743</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">502,044</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">411,743</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">As of March 31, 2025, the Company had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">448.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> of unused borrowing capacity under the $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">600.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million revolving line of credit under a credit agreement with a group of lenders (the &#8220;Credit Facility&#8221;). The unused borrowing capacity is inclusive of outstanding letters of credit totaling </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. The average interest rate on borrowings under the Credit Facility was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the three months ended March 31, 2025 and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the twelve months ended December 31, 2024, respectively. Inclusive of the impact of floating-to-fixed interest rate swaps (see &#8220;Note 7 </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Derivative Instruments and Hedging Activities&#8221;), the average interest rate was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the three months ended March 31, 2025 and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the twelve months ended December 31, 2024, respectively.</span></p><div style="font-size:11pt;font-family:'Calibri',sans-serif;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Future scheduled repayments of debt principal are as follows:</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.014%;box-sizing:content-box;"></td>
         <td style="width:1.761%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:15.526%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.761%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:14.986%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.761%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:9.824%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.761%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:8.603%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Payments due by</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Term Loan</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Delayed-Draw Term Loan</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Revolving Credit</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2026</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2027</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">May 6, 2027 (Maturity)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">200,250</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">154,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">150,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">504,250</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">200,250</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">154,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">150,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">504,250</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>21
<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>Revenue Recognition<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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><p id="note_6_revenue_recognition" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 6 &#8211; REVENUE RECOGNITION</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Disaggregation of Revenue</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span></p><div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company disaggregates revenue from clients into categories that depict how the nature, amount, and uncertainty of revenue and cash flows are affected by economic and business factors. Those categories are client market, client type, and contract mix.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.28%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.4%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Client Markets:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Energy, environment, infrastructure, and disaster recovery</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">238,570</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">224,692</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">45</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Health and social programs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">169,023</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">35</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">190,892</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">39</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Security and other civilian &amp; commercial</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">80,025</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">78,852</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">487,618</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">494,436</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div><div style="font-size:10pt;font-family:Times New Roman;">
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.28%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.4%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Client Type:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">U.S. federal government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">239,620</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">274,195</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">55</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">U.S. state and local government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">76,865</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">76,953</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">International government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27,075</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25,263</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total Government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">343,560</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">70</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">376,411</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">76</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Commercial</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">144,058</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">30</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">118,025</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:15pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:2.773%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">487,618</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">494,436</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.28%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.4%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Contract Mix:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Time-and-materials</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">209,046</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">43</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">206,153</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">42</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Fixed-price</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">238,072</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">224,796</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">45</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cost-based</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">40,500</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">63,487</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">487,618</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">494,436</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></div><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Contract Assets and Liabilities</span></p><p style="text-indent:4.173%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Contract assets consist of unbilled receivables on contracts where revenue recognized exceeds the amount billed. Contract liabilities result from advance payments received on a contract or from billings in excess of revenue recognized.</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.173%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table summarizes the contract assets and liabilities as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and December 31, 2024:</span></p><p style="text-indent:4.173%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:54%;box-sizing:content-box;"></td>
         <td style="width:2.28%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:18.72%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.28%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:18.72%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract assets</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">228,314</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">188,941</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract liabilities</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27,407</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24,580</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net contract assets (liabilities)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">200,907</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">164,361</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The increase in net contract assets (liabilities) is primarily due to the timing difference between the performance of services and billings to customers. During both the three months ended March 31, 2025 and 2024, the Company recognized </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">12.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> in revenue related to the contract liabilities balance at December 31, 2024 and 2023, respectively.</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Unfulfilled Performance Obligations</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Unfulfilled performance obligations (&#8220;UPO&#8221;) were </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> billion</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> billion as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_bc987d48-d1fc-496c-8990-f399097b4f71;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and December 31,</span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_b9778b98-1a47-4031-839a-f9e0f2a9a2ce;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> 2024</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively. The UPO of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> billion reflects the impact of approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> billion related to the termination-for-convenience notifications the Company received pursuant to the executive orders issued by the Administration or actions by DOGE during the three months ended March 31, 2025.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company expects to recognize the remaining UPO as revenue of approximately </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">53</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> by December 31, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_b1212fc9-e855-4dc6-9369-8a051e07668d;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">78</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> by December 31, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_955ea635-1723-4117-9828-3d958dd331cb;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2026</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, and the remainder thereafter.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Subsequent to March 31, 2025 and through April 25, 2025, the Company received additional notices for termination-for-convenience. Had these termination-for-convenience occurred prior to March 31, 2025, the total UPO would have been reduced by approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">12.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million.</span></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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<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>Derivative Instruments and Hedging Activities<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_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock', window );">Derivative Instruments and Hedging Activities</a></td>
<td class="text"><p id="note_7_derivative_instruments_and_hedge" style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 7 &#8211; DERIVATIVE INSTRUMENTS AND HEDGING ACTIVITIES</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At March 31, 2025</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, the Company had floating-to-fixed interest rate swap agreements for an aggregate notional amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">175.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million,</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> of which $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">75.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million will mature on </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">February 28, 2028</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million will mature on </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">June 27, 2028</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. The Company has designated the swap agreements as cash flow hedges. See &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Note 5 </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Debt&#8221; for details on the impact of the swap agreements on the Company&#8217;s interest rates. See &#8220;Note 13 </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Fair Value&#8221; for the fair value of these swaps.</span></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_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.</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 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480237/815-40-50-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-5C<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 815<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/815/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_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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>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 Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text"><p id="note_8_income_taxes" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 8 </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8211; INCOME TAXES</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">A reconciliation of the Company&#8217;s statutory rate to the effective tax rate (the &#8220;ETR&#8221;) for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024 is as follows:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:60.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.98%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:8.26%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:10.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Statutory tax rate</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21.0</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21.0</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">State taxes, net of federal benefit</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.0</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.0</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Section 987 regulations</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14.8</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Equity-based compensation</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.5</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.4</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Uncertain tax position</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.9</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.5</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Tax credits</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11.3</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.7</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.2</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.0</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Effective tax rate</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10.5</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">20.4</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
       </table></div><p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The decrease in the Company&#8217;s ETR was primarily due to an income tax benefit recognized in the first quarter of 2025 from tax planning implemented in connection with the &#8220;transitional rules&#8221; governing unrealized foreign exchange gains and losses derived from translation of the operations, assets and liabilities of non-U.S. qualified subsidiaries provided by recently finalized U.S. federal tax regulations under Internal Revenue Code Section 987 (&#8220;IRC 987&#8221;). The regulations under IRC 987 are effective for the Company for tax years beginning after December 31, 2024 and require computation of a pre-transition foreign currency gain or loss to be included in the determination of future taxable income or loss and an analysis of the various elections available to taxpayers. Based on the Company&#8217;s current analysis of the regulations and the available election to amortize its pre-2025 cumulative unrealized foreign exchange gains &amp; losses impacting U.S. taxation of foreign earnings under Subpart F of the Internal Revenue Code, the Company recognized a non-cash deferred income tax benefit of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million related to its election to amortize its pre-transition foreign currency losses against taxable income over </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ten years</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span></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>24
<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>Stockholders' Equity<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_StockholdersEquityNoteAbstract', window );"><strong>Stockholders' Equity Note [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">Stockholders' Equity</a></td>
<td class="text"><p id="note_9_stockholders_equity" style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 9 &#8211; STOCKHOLDERS&#8217; EQUITY</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Accumulated Other Comprehensive Loss</span></p><div><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive loss as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024 included the following:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:52.921%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.145000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.705%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.145000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Foreign<br/>Currency<br/>Translation<br/>Adjustments</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Change in<br/>Fair Value of<br/>Interest Rate<br/>Hedge<br/>Agreements</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at December 31, 2024</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16,383</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">637</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15,746</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Current period other comprehensive (loss) income:</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other comprehensive (loss) income before reclassifications</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,273</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,854</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,419</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Amounts reclassified from accumulated other comprehensive (loss) income </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1) (2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,094</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">691</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,785</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Effect of taxes</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">653</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">653</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total current period other comprehensive (loss) income</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">821</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,892</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,713</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at March 31, 2025</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">17,204</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,255</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,459</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(1) </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company reclassified $</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.1</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of effect of taxes related to Foreign Currency Translation Adjustments from accumulated other comprehensive (loss) income into earnings in connection with IRC 987. </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">See &#8220;Note 8 &#8211; Income Taxes&#8221;.</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(2) </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company expects to reclassify approximately $</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of unrealized losses related to the Change in Fair Value of Interest Rate Hedge Agreements from accumulated other comprehensive (loss) income into earnings during the next 12 months.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:52.921%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.145000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.705%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.145000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Foreign<br/>Currency<br/>Translation<br/>Adjustments</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Change in<br/>Fair Value of<br/>Interest Rate<br/>Hedge<br/>Agreement and Other Adjustments</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at December 31, 2023</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">12,695</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">810</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11,885</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Current period other comprehensive (loss) income:</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other comprehensive (loss) income before reclassifications</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,534</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,589</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,055</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5.05pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.933%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Amounts reclassified from accumulated other comprehensive (loss) income</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,671</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,671</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Effect of taxes</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">112</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">812</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">700</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total current period other comprehensive (loss) income</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,422</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,106</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">684</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at March 31, 2024</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,117</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,916</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11,201</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Share Repurchases</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company repurchases shares under the $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">300.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million share repurchase program authorized by the Company&#8217;s board of directors. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In addition, the Company repurchases shares in connection with the vesting of restricted stock units (&#8220;RSUs&#8221;) and performance share awards (&#8220;PSAs&#8221;) </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">granted to employees. </span><span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Repurchases for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024 are as follows:</span></span></p><div style="font-size:10pt;font-family:Times New Roman;">
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:30.96%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.52%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:15.280000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.42%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.04%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:15.780000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="12" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="5" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="5" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount Paid</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount Paid</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Share Repurchase Program</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">313,048</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">35,052</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">172,817</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,831</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Vesting of RSUs and PSAs</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">42,810</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,296</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">45,881</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,649</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">355,858</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">39,348</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">218,698</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">30,480</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StockholdersEquityNoteAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity.</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 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<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 (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-6<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480237/815-40-50-6<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<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><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(e)(1))<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 505<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/505/tableOfContent<br><br>Reference 11: 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> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 12: 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 (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 13: 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 (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-14<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-14<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 16<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-16<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-18<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-18<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>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>Stock-based Compensation<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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Stock-based Compensation</a></td>
<td class="text"><p id="note_10_stockbased_awards" style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 10 &#8211; STOCK-BASED COMPENSATION</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company&#8217;s 2018 Amended and Restated Omnibus Incentive Plan (the &#8220;2018 A&amp;R Omnibus Plan&#8221;) allows the Company to grant up to </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,050,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> total shares of common stock to officers, key employees, and non-employee directors. As of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025, the Company had approximately </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">794,760</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> shares available for grant under the 2018 A&amp;R Omnibus Plan.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following awards were granted during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.413%;box-sizing:content-box;"></td>
         <td style="width:1.74%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:10.958%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.18%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.418%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.218%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.5%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.378%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Awards Granted</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Average Grant Date Fair Value</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Employee Stock Awards</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">218,034</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">110,754</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">81.93</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">156.16</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash-Settled RSUs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">73,078</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">34,064</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">84.83</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">152.59</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">291,112</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">144,818</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> The total stock-based compensation expense was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> for the three months ended March 31, 2025 and 2024, respectively. The unrecognized compensation expense at March 31, 2025 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">41.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, which is expected to vest over the next </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2.1</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></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_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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/exampleRef<br> -Topic 718<br> -SubTopic 10<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/2147480429/718-10-50-2<br><br>Reference 2: 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 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 (a)<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 (h)(2)<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 50<br> -Paragraph 2<br> -Subparagraph (h)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: 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 (l)<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_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<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>Acquisition and Divestiture<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_BusinessCombinationsAbstract', window );"><strong>Business Combinations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock', window );">Acquisition and Divestiture</a></td>
<td class="text"><p id="note_11_business_combinations" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 11 &#8211; ACQUISITIONS AND DIVESTITURES</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Acquisitions</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Applied Energy Group, Inc.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">On </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">December 31, 2024</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, the Company completed the acquisition of </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">AEG </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">an energy technology and advisory services company</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">60.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> in cash consideration before final net working capital adjustments. AEG provides a suite of integrated technology and advisory solutions to electric and gas utilities, state and local governments, and state energy offices nationwide which enhances the Company&#8217;s service offering and client footprint.</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">As part of the preliminary allocation of the purchase consideration, the Company recorded the following:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:77.08%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:20.919999999999998%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net working capital</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,970</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Property and equipment</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">55</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Customer-related intangibles</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">20,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Developed technology</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Trade names and trademarks</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">350</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Goodwill</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">31,279</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Purchase considerations</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">60,654</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Net working capital includes restricted cash of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, accounts receivable of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, contract assets of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, accrued expenses of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, accounts payable of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, and other assets and liabilities of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The finalization of allocation is expected to be completed by the second quarter of 2025 and is currently open primarily for final net working capital adjustments.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The estimated useful lives of acquired intangible assets are as follows:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:77.08%;box-sizing:content-box;"></td>
         <td style="width:22.92%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Customer-related intangibles</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.0</span></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;years</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Developed technology</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.0 </span></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">years</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Trade names and trademarks</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.5</span></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;months</span></p></td>
        </tr>
       </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">T</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">he Company revised customer-related intangibles from an initial estimate of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">20.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and estimated useful life from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">9.0</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">6.0</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years as a result of new information received during the quarter ended March 31, 2025.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The goodwill is attributable to the workforce of AEG and expected synergies with the Company. Goodwill has an indefinite life and is deductible for income tax purposes. The pro-forma impact of the acquisition is not material to the Company&#8217;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">s results of operations.</span></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_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 business combinations, including leverage buyout transactions (as applicable), and divestitures. This may include a description of a business combination or divestiture (or series of individually immaterial business combinations or divestitures) completed during the period, including background, timing, and assets and liabilities recognized and reclassified or sold. This element does not include fixed asset sales and plant closings.</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> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/805/tableOfContent<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/205-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_MergersAcquisitionsAndDispositionsDisclosuresTextBlock</td>
</tr>
<tr>
<td style="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>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>Earnings Per 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 Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Earnings Per Share</a></td>
<td class="text"><p id="note_11_earnings_per_share" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 12 &#8211; EARNINGS PER SHARE</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Earnings per share (&#8220;EPS&#8221;), including the dilutive effect of stock awards for each period reported is summarized below:</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:62.647%;box-sizing:content-box;"></td>
         <td style="width:1.96%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:14.717%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.96%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:14.717%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands, except per share data)</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net Income</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26,851</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27,317</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Weighted-average number of basic shares outstanding during the period</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,506</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,757</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Dilutive effect of stock awards</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">107</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">189</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Weighted-average number of diluted shares outstanding during the period</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,613</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,946</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic EPS</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.45</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.46</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted EPS</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.44</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.44</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table></div><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">A total of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">79,863</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> shares of restricted stock awards were excluded from the calculation of EPS for the three months ended March 31, 2025</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> because they were anti-dilutive. There were </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10,901</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> shares excluded for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span></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_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>28
<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>Fair Value<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 Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">Fair Value</a></td>
<td class="text"><p id="note_12_fair_value" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 13 &#8211; FAIR VALUE</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Financial instruments measured at fair value on a recurring basis and their location within the accompanying consolidated balance sheets are as follows:</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:40.98%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:27.18%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands)</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 1</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 2</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 3</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Location on Balance Sheet</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Assets:</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">197</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">197</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Company-owned life insurance policies</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">22,927</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">22,927</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other assets</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Liabilities:</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">240</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">240</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - long-term portion</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,716</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,716</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other long-term liabilities</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:40.98%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:27.18%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands)</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 1</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 2</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 3</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Location on Balance Sheet</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Assets:</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">825</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">825</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - long-term portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other assets</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Company-owned life insurance policies</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,174</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,174</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other assets</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Liabilities:</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - long-term portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">153</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">153</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other long-term liabilities</span></p></td>
        </tr>
       </table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>29
<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 Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text"><p id="note_13_commitments_contingencies" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 14 &#8211; COMMITMENTS AND CONTINGENCIES</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Letters of Credit and Guarantees</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company had open standby letters of credit totaling </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> at both March 31, 2025 and December 31, 2024, respectively. Open standby letters of credit reduce the Company&#8217;s borrowing capacity under the Credit Facility.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At March 31, 2025 and December 31, 2024, the Company had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively, of bank guarantees for facility leases and contract performance obligations.</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Litigation and Claims</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company is involved in various legal matters and proceedings arising in the ordinary course of business. While these matters and proceedings cause it to incur costs, including, but not limited to, attorneys&#8217; fees, the Company currently believes that any ultimate liability arising out of these matters and proceedings will not have a material adverse effect on its financial position, results of operations, or cash flows.</span></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>30
<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 Information<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 [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">Segment Information</a></td>
<td class="text"><p id="note_15_segment_information" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE 15 </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8211; SEGMENT INFORMATION</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company provides a broad array of professional services to its clients across several markets, primarily within the U.S. The Company operates as a </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_51a00615-6914-48fa-8ed4-d69f50bb4d78;"><span style="-sec-ix-hidden:F_c0061dbd-9be7-4634-b204-9d0261eda80d;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">single</span></span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> reportable and operating segment because the chief operating decision maker (the &#8220;</span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_f92f70f9-2dcc-40b9-bd51-72c6f9b0dfea;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">CODM&#8221;), which is the Chief Executive Officer</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, manages the business activities on a consolidated basis. Although the Company disaggregates revenue by client market and client type, it does not manage its business or allocate resources based on client market or type.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The CODM assesses segment performance based on consolidated net income as reported on the Company&#8217;s consolidated statements of comprehensive income. The CODM uses consolidated net income to evaluate the Company&#8217;s performance against budgets and decide whether to use the profits to invest in the business, pay down debt, repurchase stock, pay dividends, or fund acquisitions.</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Asset information provided to the CODM is not used for the purpose of making decisions and assessing performance of the Company.</span></p><div style="font-size:11pt;font-family:'Calibri',sans-serif;"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The segment revenue, significant segment expenses, and segment profit are as follows:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:52.101%;box-sizing:content-box;"></td>
         <td style="width:2.681%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:19.267999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.681%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:19.267999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Revenue</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">487,618</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">494,436</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Significant segment expenses:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Direct labor and related fringe costs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">191,930</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">190,023</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Subcontractors and other direct costs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">110,612</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">120,510</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Indirect and selling expenses</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">131,891</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129,094</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Depreciation and amortization</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,318</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,574</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Amortization of intangible assets acquired in business combinations</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">9,477</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,291</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest expense</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7,423</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,329</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provision for income taxes</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,150</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7,019</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Other segment expense (income) </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:bold;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">966</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,721</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net Income</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26,851</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27,317</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(1)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Other segment expense (income) includes interest income, foreign currency expense, and gains/losses on disposition of assets.</span></p></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>31
<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>Basis of Presentation (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>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of Presentation</a></td>
<td class="text"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Basis of Presentation</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The accompanying consolidated financial statements are of ICF International, Inc. (&#8220;ICFI&#8221;) and its principal subsidiary, ICF Consulting Group, Inc. (&#8220;Consulting,&#8221; and together with ICFI, the &#8220;Company&#8221;), and have been prepared in accordance with United States (&#8220;U.S.&#8221;) generally accepted accounting principles (&#8220;U.S. GAAP&#8221;). Consulting is a wholly owned subsidiary of ICFI. ICFI is a holding company with no operations or assets other than its investment in the common stock of Consulting. All other subsidiaries of the Company are wholly owned by Consulting. Intercompany transactions and balances have been eliminated. The terms &#8220;federal&#8221; or &#8220;federal government&#8221; refer to the U.S. federal government, and &#8220;state and local&#8221; or &#8220;state and local government&#8221; refer to U.S. state (including territories) and local governments, unless otherwise indicated.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Software assets, which were previously included within &#8220;Property and equipment, net&#8221; and &#8220;Other assets&#8221;, have been reclassified and consolidated under &#8220;Other intangible assets, net.&#8221; To conform to the current year&#8217;s presentation, $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, as of December 31, 2024, have been reclassified from &#8220;Property and equipment, net&#8221; and &#8220;Other assets&#8221; to &#8220;Other intangible assets, net,&#8221; respectively.</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Previously separate financial statement line items &#8220;Depreciation and amortization&#8221; and &#8220;Amortization of intangible assets&#8221; have been combined under &#8220;Depreciation and amortization&#8221;.</span></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;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Use of Estimates</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and the reported amounts of revenue and expenses. Key estimates include those that are related to variable consideration on contracts with customers, costs to complete fixed-price contracts, bonus and other incentive compensation, reserves for tax benefits and valuation allowances on deferred tax assets, collectability of receivables, valuation and useful lives of acquired tangible and intangible assets, impairment of goodwill and long-lived assets, and contingencies. Actual results experienced by the Company may differ from management&#8217;s estimates.</span></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 );">Recent Accounting Pronouncements</a></td>
<td class="text"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Recent Accounting Pronouncements</span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Recent Accounting Pronouncements Not Yet Adopted</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Income Taxes</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In December 2023, the Financial Accounting Standards Board (the &#8220;FASB&#8221;) issued Accounting Standards Update (&#8220;ASU&#8221;) 2023-09, Income Taxes: Improvements to Income Tax Disclosures (&#8220;ASU 2023-09&#8221;), which requires greater disaggregation of income tax rates and amounts paid by entities. ASU 2023-09 specifically requires all entities to disclose, on an annual basis, disaggregated domestic and foreign pre-tax income or loss from continuing operations and the disaggregated income tax expense or benefit by federal, state, and foreign components, and a tabular rate reconciliation, using both percentages and reporting currency amounts, of eight specific categories as well as any individual reconciling items that are equal to or greater than 5% of a threshold computed by multiplying pretax income or loss from continuing operations by the applicable federal rate. Additionally, the amendments also require disclosure of income taxes paid disaggregated by federal, state, and foreign jurisdictions as well as any individual jurisdictions over 5% of the total income taxes paid. ASU 2023-09 will be effective for the Company for the fiscal year ending December 31, 2025, with early adoption permitted. The amendments may be adopted on a prospective or retrospective basis. The Company is expected to adopt the provisions of ASU 2023-09 for the fiscal year ending December 31, 2025 and, with the exception of additional footnote disclosures, does not expect the adoption to have any impact on the consolidated financial statements.</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Income Statement&#8212;Reporting Comprehensive Income&#8212;Expense Disaggregation Disclosures</span></p><p style="text-indent:6.667%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In November 2024, the FASB issued ASU 2024-03: Disaggregation of Income Statement Expenses (&#8220;ASU 2024-03&#8221;), which requires additional disaggregation of certain costs and expenses. ASU 2024-03 specifically requires all public entities to disclose within a tabular format the amounts of (a) purchases of inventory, (b) employee compensation, (c) depreciation, (d) intangible asset amortization, and (e) depreciation, depletion, and amortization recognized as part of oil- and gas-producing activities in each relevant expense caption as well as certain amounts that are already required to be disclosed under current U.S. GAAP. ASU 2024-03 also requires public entities to disclose a qualitative description of the composition of any amounts in relevant expense captions that are not separately disaggregated and the amount and definition of the entity&#8217;s selling expenses. ASU 2024-03 will be effective for the Company for the 2027 fiscal year and interim periods within the 2028 fiscal year, with early adoption permitted. The amendments may be adopted on a prospective or retrospective basis. The Company is currently evaluating the impact of the adoption of ASU 2024-03 and, with the exception of additional footnote disclosures, does not expect the adoption to have a material impact on the consolidated financial statements.</span></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_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_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_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>32
<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>Restricted Cash (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_RestrictedCashAndCashEquivalentsCurrentAbstract', window );"><strong>Restricted Cash and Cash Equivalents, Current [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock', window );">Reconciliation of Cash and Cash Equivalents, and Restricted Cash</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table provides a reconciliation of cash, cash equivalents, and restricted cash as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024 to cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows for the three months ended March 31, 2025 and 2024:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:48.55%;box-sizing:content-box;"></td>
         <td style="width:2.701%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:21.023999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.701%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:21.023999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash and cash equivalents</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,718</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,683</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Restricted cash</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,374</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">916</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total of cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24,092</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,599</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestrictedCashAndCashEquivalentsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestrictedCashAndCashEquivalentsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cash and cash equivalents restricted as to withdrawal or usage.</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://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(1)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-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_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock</td>
</tr>
<tr>
<td style="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>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>Contract Receivables, Net (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_ReceivablesAbstract', window );"><strong>Receivables [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock', window );">Summary of Contract Receivables, Net</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Contract receivables, net consisted of the following:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:59.76%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.439999999999998%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.479999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Billed and billable</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">242,652</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">263,624</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Allowance for expected credit losses</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,491</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,701</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract receivables, net</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">236,161</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">256,923</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></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_icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock', window );">Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following is a reconciliation of billed contract receivables sold to MUFG that were eligible and accounted for as sales under Accounting Standards Codification (&#8220;ASC&#8221;) 860, including billed contract receivables sold to MUFG and collected from customers on behalf of MUFG during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, and the balance of billed contract receivables not collected from customers as of March 31, 2025 and 2024, respectively:</span>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:58%;box-sizing:content-box;"></td>
         <td style="width:5%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:19.18%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:3%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:10.82%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">As of and for the Three Months Ended</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, billed contract receivables sold and not yet collected </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25,966</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21,302</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Billed contract receivables sold during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">123,685</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">133,398</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Collections from customers during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">118,472</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129,824</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, billed contract receivables sold and not yet collected </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(3)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">31,179</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24,876</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The beginning balances represent billed contract receivables that were previously sold and derecognized by the Company but had not been collected from customers as of January 1, </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.2</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.6</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the sale of billed contract receivables.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The ending balances represent billed contract receivables that were sold and derecognized by the Company but had not been collected from customers as of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></div></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte', window );">Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following is a reconciliation of cash collections from customers of billed contract receivables previously sold to MUFG that were eligible and accounted for as sales under ASC 860, including collections from customers on behalf of MUFG of previously sold billed contract receivables and remittances of cash collections to MUFG during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, and the balance of cash collected but not remitted to MUFG as of March 31, 2025 and 2024, respectively:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:53.551%;box-sizing:content-box;"></td>
         <td style="width:2.3%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:15.203000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.3%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:22.645%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">As of and for the Three Months Ended</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, cash collected but not yet remitted to MUFG </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,339</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21,796</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Collections from customers during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">118,472</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129,824</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;Remittances to MUFG during the period </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">112,970</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">125,879</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, cash collected but not yet remitted to MUFG </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(3)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">28,841</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25,741</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The beginning balances represent cash collected from customers on behalf of MUFG for billed contract receivables that were previously sold and derecognized by the Company but had not been remitted to MUFG as of January 1, </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.5</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.9</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the collection of billed contract receivables that were sold but not yet remitted to MUFG.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The ending balances are included as part of &#8220;Accrued expenses and other current liabilities&#8221; on the Company&#8217;s consolidated balance sheets.</span></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Summary of reconciliation of billed contract receivables sold to MUFG including receivables sold to MUFC and collected from customers on behalf of MUFG and receivables not yet collected from customers.</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;">icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</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_icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Summary of reconciliation of cash collections from customers of billed contract receivables previously sold to MUFG including previous sold receivables and remittance of cash collections to MUFG and cash collected but not yet remitted to MUFG.</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;">icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</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_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.</p></div>
<a href="javascript:void(0);" onclick="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(4))<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(3))<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_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<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>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 [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock', window );">Summary of Future Minimum Lease Payments Under Non-Cancellable Operating and Finance Leases</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Future minimum lease payments under non-cancellable operating and finance leases as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 were as follows:</span><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:59.832%;box-sizing:content-box;"></td>
         <td style="width:1.78%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.302999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.78%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.302999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Operating</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Finance</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2026</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25,144</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,041</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2027</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,158</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,041</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 30, 2028</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">17,511</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,041</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 30, 2029</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,934</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,967</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2030</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,220</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,224</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Thereafter</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">114,872</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total future minimum lease payments</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">208,839</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,314</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Less: Interest</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">36,919</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,086</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total lease liabilities</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">171,920</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,228</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Lease liabilities - current</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">19,792</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,635</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Lease liabilities - non-current</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">152,128</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10,593</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total lease liabilities</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">171,920</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,228</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Lessee operating and finance lease liability maturity.</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;">icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<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>Debt (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>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtInstrumentsTextBlock', window );">Schedule of Debt</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and December 31, 2024, debt consisted of:</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.493%;box-sizing:content-box;"></td>
         <td style="width:1.8%;box-sizing:content-box;"></td>
         <td style="width:17.756%;box-sizing:content-box;"></td>
         <td style="width:1.8%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:15.217%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.8%;box-sizing:content-box;"></td>
         <td style="width:10.598%;box-sizing:content-box;"></td>
         <td style="width:1.8%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:8.738000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="4" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="4" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Average<br/>Interest Rate</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Outstanding<br/>Balance</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Average<br/>Interest Rate</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Outstanding<br/>Balance</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Term Loan</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">200,250</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">200,250</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Delayed-Draw Term Loan</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">154,000</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">156,750</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Revolving Credit</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">150,000</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">57,225</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total before debt issuance costs</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.7</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">504,250</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.6</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">414,225</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Unamortized debt issuance costs</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,206</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,482</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">502,044</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">411,743</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:48.8%;box-sizing:content-box;"></td>
         <td style="width:2.22%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:21.84%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.22%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:20.919999999999998%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Current portion of long-term debt</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Long-term debt - non-current</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">502,044</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">411,743</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">502,044</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">411,743</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock', window );">Schedule of Future Scheduled Repayments of Debt Principal</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Future scheduled repayments of debt principal are as follows:</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.014%;box-sizing:content-box;"></td>
         <td style="width:1.761%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:15.526%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.761%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:14.986%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.761%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:9.824%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.761%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:8.603%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Payments due by</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Term Loan</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Delayed-Draw Term Loan</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Revolving Credit</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2026</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 31, 2027</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">May 6, 2027 (Maturity)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">200,250</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">154,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">150,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">504,250</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">200,250</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">154,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">150,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">504,250</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_ScheduleOfDebtInstrumentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, 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://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 3: 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 4: http://www.xbrl.org/2009/role/commonPracticeRef<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 5: 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><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477734/942-470-50-3<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-8<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-6<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-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_ScheduleOfDebtInstrumentsTextBlock</td>
</tr>
<tr>
<td style="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>36
<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>Revenue Recognition (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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of Revenue</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company disaggregates revenue from clients into categories that depict how the nature, amount, and uncertainty of revenue and cash flows are affected by economic and business factors. Those categories are client market, client type, and contract mix.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.28%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.4%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Client Markets:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Energy, environment, infrastructure, and disaster recovery</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">238,570</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">224,692</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">45</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Health and social programs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">169,023</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">35</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">190,892</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">39</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Security and other civilian &amp; commercial</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">80,025</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">78,852</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">487,618</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">494,436</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.28%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.4%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Client Type:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">U.S. federal government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">239,620</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">274,195</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">55</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">U.S. state and local government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">76,865</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">76,953</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">International government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27,075</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25,263</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total Government</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">343,560</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">70</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">376,411</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">76</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Commercial</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">144,058</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">30</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">118,025</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:15pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:2.773%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">487,618</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">494,436</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.28%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.66%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.92%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.379999999999999%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.4%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Dollars</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Percent</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Contract Mix:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Time-and-materials</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">209,046</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">43</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">206,153</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">42</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Fixed-price</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">238,072</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">224,796</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">45</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cost-based</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">40,500</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">63,487</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">487,618</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">494,436</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Schedule of Contract Assets and Liabilities</a></td>
<td class="text"><p style="text-indent:4.173%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table summarizes the contract assets and liabilities as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and December 31, 2024:</span></p><p style="text-indent:4.173%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:54%;box-sizing:content-box;"></td>
         <td style="width:2.28%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:18.72%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.28%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:18.72%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract assets</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">228,314</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">188,941</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Contract liabilities</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27,407</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24,580</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net contract assets (liabilities)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">200,907</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">164,361</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<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>Income Taxes (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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Effective Income Tax Rate Reconciliation</a></td>
<td class="text"><p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">A reconciliation of the Company&#8217;s statutory rate to the effective tax rate (the &#8220;ETR&#8221;) for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024 is as follows:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:60.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.98%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:8.26%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:10.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Statutory tax rate</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21.0</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21.0</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">State taxes, net of federal benefit</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.0</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.0</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Section 987 regulations</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14.8</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Equity-based compensation</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.5</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.4</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Uncertain tax position</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.9</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.5</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Tax credits</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11.3</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.7</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.2</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.0</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Effective tax rate</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10.5</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">20.4</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="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> -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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<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>Stockholders' Equity (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_StockholdersEquityNoteAbstract', window );"><strong>Stockholders' Equity Note [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock', window );">Components of Accumulated Other Comprehensive Loss</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive loss as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024 included the following:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:52.921%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.145000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.705%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.145000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Foreign<br/>Currency<br/>Translation<br/>Adjustments</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Change in<br/>Fair Value of<br/>Interest Rate<br/>Hedge<br/>Agreements</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at December 31, 2024</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16,383</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">637</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15,746</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Current period other comprehensive (loss) income:</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other comprehensive (loss) income before reclassifications</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,273</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,854</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,419</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Amounts reclassified from accumulated other comprehensive (loss) income </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1) (2)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,094</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">691</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,785</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Effect of taxes</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">653</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">653</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total current period other comprehensive (loss) income</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">821</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,892</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,713</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at March 31, 2025</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">17,204</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,255</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,459</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(1) </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company reclassified $</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.1</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of effect of taxes related to Foreign Currency Translation Adjustments from accumulated other comprehensive (loss) income into earnings in connection with IRC 987. </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">See &#8220;Note 8 &#8211; Income Taxes&#8221;.</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(2) </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company expects to reclassify approximately $</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of unrealized losses related to the Change in Fair Value of Interest Rate Hedge Agreements from accumulated other comprehensive (loss) income into earnings during the next 12 months.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:52.921%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.145000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.705%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.361%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.145000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Foreign<br/>Currency<br/>Translation<br/>Adjustments</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Change in<br/>Fair Value of<br/>Interest Rate<br/>Hedge<br/>Agreement and Other Adjustments</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at December 31, 2023</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">12,695</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">810</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11,885</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Current period other comprehensive (loss) income:</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other comprehensive (loss) income before reclassifications</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,534</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,589</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,055</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5.05pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.933%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Amounts reclassified from accumulated other comprehensive (loss) income</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,671</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,671</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Effect of taxes</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">112</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">812</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">700</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total current period other comprehensive (loss) income</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,422</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,106</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">684</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accumulated other comprehensive (loss) income at March 31, 2024</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,117</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,916</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11,201</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></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_ScheduleOfTreasuryStockByClassTextBlock', window );">Summary of Repurchases of Shares</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Repurchases for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024 are as follows:</span>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:30.96%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.52%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:15.280000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.42%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:16.04%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:15.780000000000001%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="12" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="5" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="5" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount Paid</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount Paid</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Share Repurchase Program</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">313,048</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">35,052</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">172,817</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,831</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Vesting of RSUs and PSAs</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">42,810</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,296</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">45,881</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,649</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">355,858</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">39,348</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">218,698</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">30,480</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accumulated 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> -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://www.xbrl.org/2009/role/commonPracticeRef<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 3: http://www.xbrl.org/2009/role/commonPracticeRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfTreasuryStockByClassTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury 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> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-3<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-4<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-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_ScheduleOfTreasuryStockByClassTextBlock</td>
</tr>
<tr>
<td style="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_StockholdersEquityNoteAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StockholdersEquityNoteAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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>Stock-based Compensation (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_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract', window );"><strong>Share-Based Payment Arrangement, Recognized Amount [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock', window );">Schedule of Awards Granted</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following awards were granted during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:36.413%;box-sizing:content-box;"></td>
         <td style="width:1.74%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:10.958%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.18%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.418%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.2%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:11.218%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.5%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:12.378%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Awards Granted</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Average Grant Date Fair Value</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Employee Stock Awards</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">218,034</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">110,754</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">81.93</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">156.16</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash-Settled RSUs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">73,078</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">34,064</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">84.83</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">152.59</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Total</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">291,112</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">144,818</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 outstanding nonvested shares.</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 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(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_ScheduleOfNonvestedShareActivityTableTextBlock</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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>Acquisition and Divestiture (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_BusinessCombinationsAbstract', window );"><strong>Business Combinations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock', window );">Summary of Preliminary Purchase Price Allocation</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">As part of the preliminary allocation of the purchase consideration, the Company recorded the following:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:77.08%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:20.919999999999998%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net working capital</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,970</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Property and equipment</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">55</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Customer-related intangibles</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">20,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Developed technology</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,000</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Trade names and trademarks</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">350</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Goodwill</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">31,279</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Purchase considerations</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">60,654</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock', window );">Summary of Estimated Useful Lives of Acquired Intangible Assets</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The estimated useful lives of acquired intangible assets are as follows:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:77.08%;box-sizing:content-box;"></td>
         <td style="width:22.92%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Customer-related intangibles</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6.0</span></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;years</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Developed technology</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.0 </span></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">years</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Trade names and trademarks</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.5</span></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;months</span></p></td>
        </tr>
       </table><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">T</span><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 finite-lived intangible assets acquired as part of a business combination or through an asset purchase, by major class and in total, including the value of the asset acquired, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization 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> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-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_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.</p></div>
<a href="javascript:void(0);" onclick="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 20<br> -Name Accounting Standards Codification<br> -Paragraph 1<br> -Section 50<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_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>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>Earnings Per 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 Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Earnings Per Share Including Dilutive Effect of Stock Awards</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Earnings per share (&#8220;EPS&#8221;), including the dilutive effect of stock awards for each period reported is summarized below:</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:62.647%;box-sizing:content-box;"></td>
         <td style="width:1.96%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:14.717%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.96%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:14.717%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands, except per share data)</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net Income</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26,851</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27,317</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Weighted-average number of basic shares outstanding during the period</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,506</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,757</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Dilutive effect of stock awards</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">107</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">189</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Weighted-average number of diluted shares outstanding during the period</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,613</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">18,946</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic EPS</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.45</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.46</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted EPS</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.44</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.44</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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>42
<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 (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 Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock', window );">Schedule of Financial Instruments Measured at Fair Value on Recurring Basis</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Financial instruments measured at fair value on a recurring basis and their location within the accompanying consolidated balance sheets are as follows:</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:40.98%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:27.18%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31, 2025</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands)</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 1</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 2</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 3</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Location on Balance Sheet</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Assets:</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">197</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">197</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Company-owned life insurance policies</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">22,927</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">22,927</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other assets</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Liabilities:</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">240</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">240</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - long-term portion</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,716</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,716</span></p></td>
         <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other long-term liabilities</span></p></td>
        </tr>
       </table><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:40.98%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:4.58%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:1.38%;box-sizing:content-box;"></td>
         <td style="width:27.18%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31, 2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(in thousands)</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 1</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 2</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Level 3</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Location on Balance Sheet</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Assets:</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">825</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">825</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - long-term portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other assets</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Company-owned life insurance policies</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,174</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,174</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other assets</span></p></td>
        </tr>
        <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Liabilities:</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cceeff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - current portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest rate swaps - long-term portion</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">153</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">153</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other long-term liabilities</span></p></td>
        </tr>
       </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 financial instrument measured at fair value on recurring or nonrecurring basis. Includes, but is not limited to, instrument classified in shareholders' equity.</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 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 2: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<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> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<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 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock</td>
</tr>
<tr>
<td style="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>43
<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>Segment Information (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 [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock', window );">Schedule of Segment Revenue, Significant Segment Expenses, and Segment Profit</a></td>
<td class="text"><p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The segment revenue, significant segment expenses, and segment profit are as follows:</span></p>
       <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
        <tr style="visibility:collapse;">
         <td style="width:52.101%;box-sizing:content-box;"></td>
         <td style="width:2.681%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:19.267999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:2.681%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
         <td style="width:19.267999999999997%;box-sizing:content-box;"></td>
         <td style="width:1%;box-sizing:content-box;"></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Revenue</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">487,618</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">494,436</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Significant segment expenses:</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Direct labor and related fringe costs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">191,930</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">190,023</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Subcontractors and other direct costs</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">110,612</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">120,510</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Indirect and selling expenses</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">131,891</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129,094</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Depreciation and amortization</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,318</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,574</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Amortization of intangible assets acquired in business combinations</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">9,477</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,291</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest expense</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7,423</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,329</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provision for income taxes</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,150</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7,019</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Other segment expense (income) </span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:bold;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">(1)</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">966</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,721</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
        </tr>
        <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;">
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net Income</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">26,851</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
         <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">27,317</span></p></td>
         <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
        </tr>
       </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(1)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Other segment expense (income) includes interest income, foreign currency expense, and gains/losses on disposition of assets.</span></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_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues.</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 (a)<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_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock</td>
</tr>
<tr>
<td style="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>44
<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>Basis of Presentation - Additional Information (Details)<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>
<div>USD ($) </div>
<div>Segment</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>Segment</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_icfi_BasisOfPresentationAndNatureOfOperationsLineItems', window );"><strong>Basis Of Presentation And Nature Of Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of operating segments</a></td>
<td class="nump">1<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfReportableSegments', window );">Number of reporting segments</a></td>
<td class="nump">1<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_BalanceSheetLocationAxis=icfi_IntangibleAssetsNetExcludingGoodwillMember', window );">Other Intangible Assets, Net</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_icfi_BasisOfPresentationAndNatureOfOperationsLineItems', window );"><strong>Basis Of Presentation And Nature Of Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedComputerSoftwareNet', window );">Capitalized software intangible assets | $</a></td>
<td class="nump">$ 1,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 21,800<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_BasisOfPresentationAndNatureOfOperationsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Basis of presentation and nature of 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;">icfi_BasisOfPresentationAndNatureOfOperationsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CapitalizedComputerSoftwareNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 carrying amount of capitalized computer software costs net of accumulated amortization 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 985<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/2147481283/985-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_CapitalizedComputerSoftwareNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning 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/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/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfOperatingSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="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 47<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<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 54<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<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 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=icfi_IntangibleAssetsNetExcludingGoodwillMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BalanceSheetLocationAxis=icfi_IntangibleAssetsNetExcludingGoodwillMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>45
<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="1"><div style="width: 200px;"><strong>Restricted Cash - Reconciliation of Cash and Cash Equivalents, and Restricted Cash to the Total of Cash, Cash Equivalents, and Restricted Cash (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>
<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_CashAndCashEquivalentsAbstract', window );"><strong>Cash and Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 5,718<span></span>
</td>
<td class="nump">$ 4,960<span></span>
</td>
<td class="nump">$ 3,683<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_RestrictedCashCurrent', window );">Restricted cash</a></td>
<td class="nump">18,374<span></span>
</td>
<td class="nump">$ 13,857<span></span>
</td>
<td class="nump">916<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Total of cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows</a></td>
<td class="nump">$ 24,092<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,599<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="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(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/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<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_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_RestrictedCashCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 restricted as to withdrawal or usage, classified as current. 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.</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(1))<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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCashCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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>46
<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="1"><div style="width: 200px;"><strong>Contract Receivables, Net - Summary of Contract Receivables, Net (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_ReceivablesAbstract', window );"><strong>Receivables [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_us-gaap_BilledContractReceivables', window );">Billed and billable</a></td>
<td class="nump">$ 242,652<span></span>
</td>
<td class="nump">$ 263,624<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_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Allowance for expected credit losses</a></td>
<td class="num">(6,491)<span></span>
</td>
<td class="num">(6,701)<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_AccountsReceivableNetCurrent', window );">Contract receivables, net</a></td>
<td class="nump">$ 236,161<span></span>
</td>
<td class="nump">$ 256,923<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<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_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_BilledContractReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amounts due for billed services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the Company and, at a minimum, one other party. An example would be amounts billed to customers under contracts or programs but not paid 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 912<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478345/912-310-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_BilledContractReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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="2" rowspan="2"><div style="width: 200px;"><strong>Contract Receivables, Net -Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (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_ReceivablesAbstract', window );"><strong>Receivables [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></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_icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers', window );">Beginning balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">$ 25,966<span></span>
</td>
<td class="nump">$ 21,302<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_AccountsReceivableSale', window );">Billed receivables sold during the period</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[2]</sup></td>
<td class="nump">123,685<span></span>
</td>
<td class="nump">133,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_ProceedsFromAccountsReceivableSecuritization', window );">Collections from customers during the period</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[2],[3]</sup></td>
<td class="num">(118,472)<span></span>
</td>
<td class="num">(129,824)<span></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_icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers', window );">Ending balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[4]</sup></td>
<td class="nump">$ 31,179<span></span>
</td>
<td class="nump">$ 24,876<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The beginning balances represent billed contract receivables that were previously sold and derecognized by the Company but had not been collected from customers as of January 1, </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.2</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.6</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the sale of billed contract receivables.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[3]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.5</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.9</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the collection of billed contract receivables that were sold but not yet remitted to MUFG.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[4]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The ending balances represent billed contract receivables that were sold and derecognized by the Company but had not been collected from customers as of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Billed contract receivables sold but not yet collected from customers.</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;">icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableSale">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from sale of 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/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-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_AccountsReceivableSale</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromAccountsReceivableSecuritization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from securitizations of receivables treated as collateralized borrowings, which are classified as financing 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> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-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_ProceedsFromAccountsReceivableSecuritization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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>Contract Receivables, Net - Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (Parenthetical) (Details) - USD ($)<br> $ in Millions</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_ReceivablesAbstract', window );"><strong>Receivables [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_icfi_ProceedsFromSaleOfBilledContractReceivables', window );">Proceeds from sale of billed contract receivables</a></td>
<td class="nump">$ 5.2<span></span>
</td>
<td class="nump">$ 3.6<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_ProceedsFromSaleOfBilledContractReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from sale of billed contract receivables.</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;">icfi_ProceedsFromSaleOfBilledContractReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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="2" rowspan="2"><div style="width: 200px;"><strong>Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (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_ReceivablesAbstract', window );"><strong>Receivables [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></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_icfi_SaleOfReceivablesLiabilities', window );">Beginning balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">$ 23,339<span></span>
</td>
<td class="nump">$ 21,796<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_ProceedsFromAccountsReceivableSecuritization', window );">Collections from customers during the period</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[2],[3]</sup></td>
<td class="nump">118,472<span></span>
</td>
<td class="nump">129,824<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfAccountsReceivableSecuritization', window );">Remittances to MUFG during the period</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[3]</sup></td>
<td class="num">(112,970)<span></span>
</td>
<td class="num">(125,879)<span></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_icfi_SaleOfReceivablesLiabilities', window );">Ending balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[4]</sup></td>
<td class="nump">$ 28,841<span></span>
</td>
<td class="nump">$ 25,741<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The beginning balances represent cash collected from customers on behalf of MUFG for billed contract receivables that were previously sold and derecognized by the Company but had not been remitted to MUFG as of January 1, </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.2</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.6</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the sale of billed contract receivables.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[3]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.5</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.9</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the collection of billed contract receivables that were sold but not yet remitted to MUFG.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[4]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The ending balances are included as part of &#8220;Accrued expenses and other current liabilities&#8221; on the Company&#8217;s consolidated balance sheets.</span></td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_SaleOfReceivablesLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sale of receivables 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;">icfi_SaleOfReceivablesLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromAccountsReceivableSecuritization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from securitizations of receivables treated as collateralized borrowings, which are classified as financing 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> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-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_ProceedsFromAccountsReceivableSecuritization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfAccountsReceivableSecuritization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Repayments of securitizations of receivables treated as collateralized borrowings, which are classified as financing 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> -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_RepaymentsOfAccountsReceivableSecuritization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>50
<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>Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (Parenthetical) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="4">3 Months Ended</th>
<th class="th" colspan="2"></th>
<th class="th" colspan="2"></th>
</tr>
<tr>
<th class="th" colspan="2"><div>Mar. 31, 2025</div></th>
<th class="th" colspan="2"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><sup>[2]</sup></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><sup>[2]</sup></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_AccountsNotesAndLoansReceivableLineItems', window );"><strong>Accounts, Notes, Loans and Financing Receivable [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td colspan="2" class="text">&#160;<span></span>
</td>
<td colspan="2" 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_icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted', window );">Procceds from sale of billed receivables but not yet remitted to MUFG</a></td>
<td class="nump">$ 5,500<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ 3,900<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td colspan="2" class="text">&#160;<span></span>
</td>
<td colspan="2" 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_icfi_SaleOfReceivablesLiabilities', window );">Sale of billed receivables</a></td>
<td class="nump">$ 28,841<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">$ 25,741<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td colspan="2" class="nump">$ 23,339<span></span>
</td>
<td colspan="2" class="nump">$ 21,796<span></span>
</td>
</tr>
<tr><td colspan="9"></td></tr>
<tr><td colspan="9"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The ending balances are included as part of &#8220;Accrued expenses and other current liabilities&#8221; on the Company&#8217;s consolidated balance sheets.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The beginning balances represent cash collected from customers on behalf of MUFG for billed contract receivables that were previously sold and derecognized by the Company but had not been remitted to MUFG as of January 1, </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025 and 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</span></td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from sale of billed receivables not yet remitted.</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;">icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_icfi_SaleOfReceivablesLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sale of receivables 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;">icfi_SaleOfReceivablesLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsNotesAndLoansReceivableLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 40<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481628/310-20-40-7<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 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_AccountsNotesAndLoansReceivableLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>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="2"><div style="width: 200px;"><strong>Contract Receivables, Net - Additional Information (Details) - USD ($)<br> $ in Millions</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_FinancingReceivableRecordedInvestmentPastDueLineItems', window );"><strong>Financing Receivable, Past Due [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleAndCollectionOfReceivables', window );">Sale of billed contract receivables amount</a></td>
<td class="nump">$ 10.7<span></span>
</td>
<td class="nump">$ 7.5<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_icfi_ContractReceivablesAxis=icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember', window );">Master Receivables Purchase Agreement with MUFG Bank</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_FinancingReceivableRecordedInvestmentPastDueLineItems', window );"><strong>Financing Receivable, Past Due [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables', window );">Cash collected not yet remitted for receivables sold</a></td>
<td class="nump">$ 1.5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 7.9<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash collected not yet remitted to purchaser of billed receivables.</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;">icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-14<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 80<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479294/326-20-55-80<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleAndCollectionOfReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 inflow associated with the proceeds from sale and collection of receivables during 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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-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_ProceedsFromSaleAndCollectionOfReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_icfi_ContractReceivablesAxis=icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">icfi_ContractReceivablesAxis=icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="1"><div style="width: 200px;"><strong>Leases - Additional Information (Details)<br></strong></div></th>
<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_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee Lease Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseRemainingLeaseTerm', window );">Operating leases, remaining lease term</a></td>
<td class="text">1 year<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_LesseeFinanceLeaseRemainingLeaseTerm', window );">Finance leases, remaining lease term</a></td>
<td class="text">1 year<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_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee Lease Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseRemainingLeaseTerm', window );">Operating leases, remaining lease term</a></td>
<td class="text">14 years<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeFinanceLeaseRemainingLeaseTerm', window );">Finance leases, remaining lease term</a></td>
<td class="text">14 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeFinanceLeaseRemainingLeaseTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Remaining lease term of finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="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 7A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-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_LesseeFinanceLeaseRemainingLeaseTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeLeaseDescriptionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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 7A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<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 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-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_LesseeLeaseDescriptionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseRemainingLeaseTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Remaining lease term of operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="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 7A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-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_LesseeOperatingLeaseRemainingLeaseTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<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>Leases - Summary of Future Minimum Lease Payments Under Non-Cancellable Operating and Finance 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_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths', window );">March 31, 2026</a></td>
<td class="nump">$ 25,144<span></span>
</td>
<td class="text">&#160;<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_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo', window );">March 31, 2027</a></td>
<td class="nump">23,158<span></span>
</td>
<td class="text">&#160;<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_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree', window );">March 30, 2028</a></td>
<td class="nump">17,511<span></span>
</td>
<td class="text">&#160;<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_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour', window );">March 30, 2029</a></td>
<td class="nump">14,934<span></span>
</td>
<td class="text">&#160;<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_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive', window );">March 31, 2030</a></td>
<td class="nump">13,220<span></span>
</td>
<td class="text">&#160;<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_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive', window );">Thereafter</a></td>
<td class="nump">114,872<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total future minimum lease payments</a></td>
<td class="nump">208,839<span></span>
</td>
<td class="text">&#160;<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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less: Interest</a></td>
<td class="num">(36,919)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total lease liabilities</a></td>
<td class="nump">171,920<span></span>
</td>
<td class="text">&#160;<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 );">Lease liabilities - current</a></td>
<td class="nump">19,792<span></span>
</td>
<td class="nump">$ 20,721<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 );">Lease liabilities - non-current</a></td>
<td class="nump">152,128<span></span>
</td>
<td class="nump">155,935<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 );">March 31, 2026</a></td>
<td class="nump">3,041<span></span>
</td>
<td class="text">&#160;<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 );">March 31, 2027</a></td>
<td class="nump">3,041<span></span>
</td>
<td class="text">&#160;<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 );">March 30, 2028</a></td>
<td class="nump">3,041<span></span>
</td>
<td class="text">&#160;<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 );">March 30, 2029</a></td>
<td class="nump">2,967<span></span>
</td>
<td class="text">&#160;<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 );">March 31, 2030</a></td>
<td class="nump">2,224<span></span>
</td>
<td class="text">&#160;<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_FinanceLeaseLiabilityPaymentsDueAfterYearFive', window );">Thereafter</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDue', window );">Total future minimum lease payments</a></td>
<td class="nump">14,314<span></span>
</td>
<td class="text">&#160;<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_FinanceLeaseLiabilityUndiscountedExcessAmount', window );">Less: Interest</a></td>
<td class="num">(1,086)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Total lease liabilities</a></td>
<td class="nump">13,228<span></span>
</td>
<td class="text">&#160;<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_FinanceLeaseLiabilityCurrent', window );">Lease liabilities - current</a></td>
<td class="nump">2,635<span></span>
</td>
<td class="nump">2,612<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_FinanceLeaseLiabilityNoncurrent', window );">Lease liabilities - non-current</a></td>
<td class="nump">$ 10,593<span></span>
</td>
<td class="nump">$ 11,261<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<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_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_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_FinanceLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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/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_FinanceLeaseLiabilityPaymentsDueAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_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_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_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating lease, due after fifth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="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_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating lease, due in fifth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="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_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating lease, due in fourth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="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_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating lease, due in third rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="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_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating lease, due in second rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="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_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating lease, due in next rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="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_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_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>
<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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<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>Debt - Schedule of Debt (Details) - 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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateDuringPeriod', window );">Average Interest Rate</a></td>
<td class="nump">5.70%<span></span>
</td>
<td class="nump">6.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_DebtInstrumentCarryingAmount', window );">Outstanding Balance before debt issuance costs</a></td>
<td class="nump">$ 504,250<span></span>
</td>
<td class="nump">$ 414,225<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_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet', window );">Unamortized debt issuance costs</a></td>
<td class="num">(2,206)<span></span>
</td>
<td class="num">(2,482)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Current portion of long-term debt</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_LongTermDebtNoncurrent', window );">Long-term debt - non-current</a></td>
<td class="nump">502,044<span></span>
</td>
<td class="nump">411,743<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_LongTermDebt', window );">Total</a></td>
<td class="nump">502,044<span></span>
</td>
<td class="nump">411,743<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_LongtermDebtTypeAxis=icfi_TermLoanMember', window );">Term Loan</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Outstanding Balance before debt issuance costs</a></td>
<td class="nump">200,250<span></span>
</td>
<td class="nump">200,250<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_LongtermDebtTypeAxis=us-gaap_DelayedDrawTermLoanMember', window );">Delayed-Draw Term Loan</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Outstanding Balance before debt issuance costs</a></td>
<td class="nump">154,000<span></span>
</td>
<td class="nump">156,750<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_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember', window );">Revolving Credit</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Outstanding Balance before debt issuance costs</a></td>
<td class="nump">$ 150,000<span></span>
</td>
<td class="nump">$ 57,225<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentCarryingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types 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 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/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(1)<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_DebtInstrumentCarryingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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 2: 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(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<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 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 4: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<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 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 6: 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 7: 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 8: 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 9: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 10: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<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> -Subparagraph (e)<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 (f)<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 (h)<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 1D<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<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 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<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 1D<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<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 (a)<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 1E<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<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 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<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 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 22: 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 23: 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)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 24: 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)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 25: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 26: 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><br>Reference 27: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-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_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 unamortized debt discount (premium) and debt issuance costs.</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 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 2: 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 3: 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 4: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-1<br><br>Reference 6: 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 7: 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)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-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_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 classified as current. Excludes lease 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 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_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 classified as noncurrent. Excludes lease 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 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<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_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtTypeAxis=icfi_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongtermDebtTypeAxis=icfi_TermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_LongtermDebtTypeAxis=us-gaap_DelayedDrawTermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongtermDebtTypeAxis=us-gaap_DelayedDrawTermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>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>Debt - Additional Information (Details) - 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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LettersOfCreditOutstandingAmount', window );">Letters of credit outstanding, amount</a></td>
<td class="nump">$ 1,600,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_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember', window );">Interest Rate Swap | Cash Flow Hedging | Designated as Hedging Instrument</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeFixedInterestRate', window );">Derivative fixed interest rate</a></td>
<td class="nump">5.10%<span></span>
</td>
<td class="nump">5.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_LineOfCreditFacilityAxis=us-gaap_LineOfCreditMember', window );">Revolving Credit</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit facility, maximum borrowing capacity</a></td>
<td class="nump">$ 600,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount', window );">Unused borrowing capacity amount</a></td>
<td class="nump">$ 448,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityInterestRateDuringPeriod', window );">Interest rate on credit facility</a></td>
<td class="nump">5.70%<span></span>
</td>
<td class="nump">6.60%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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 2: 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(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<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 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 4: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<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 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 6: 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 7: 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 8: 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 9: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 10: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<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> -Subparagraph (e)<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 (f)<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 (h)<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 1D<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<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 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<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 1D<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<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 (a)<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 1E<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<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 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<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 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 22: 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 23: 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)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 24: 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)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 25: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 26: 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><br>Reference 27: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-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_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 unused borrowing capacity under the long-term financing arrangement that is available to the entity 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 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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeFixedInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fixed interest rate related to the interest rate derivative.</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_DerivativeFixedInterestRate</td>
</tr>
<tr>
<td style="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_LettersOfCreditOutstandingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the contingent obligation under letters of credit outstanding as of the reporting date.</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_LettersOfCreditOutstandingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="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_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityAxis=us-gaap_LineOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LineOfCreditFacilityAxis=us-gaap_LineOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="1"><div style="width: 200px;"><strong>Debt - Schedule of Future Scheduled Repayments of Debt Principal (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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths', window );">March 31, 2026</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_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo', window );">March 31, 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_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree', window );">May 6, 2027 (Maturity)</a></td>
<td class="nump">504,250<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Total</a></td>
<td class="nump">504,250<span></span>
</td>
<td class="nump">$ 414,225<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_LongtermDebtTypeAxis=icfi_TermLoanMember', window );">Term Loan</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree', window );">May 6, 2027 (Maturity)</a></td>
<td class="nump">200,250<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Total</a></td>
<td class="nump">200,250<span></span>
</td>
<td class="nump">200,250<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_LongtermDebtTypeAxis=us-gaap_DelayedDrawTermLoanMember', window );">Delayed-Draw Term Loan</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths', window );">March 31, 2026</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_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo', window );">March 31, 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_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree', window );">May 6, 2027 (Maturity)</a></td>
<td class="nump">154,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Total</a></td>
<td class="nump">154,000<span></span>
</td>
<td class="nump">156,750<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_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember', window );">Revolving Credit</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree', window );">May 6, 2027 (Maturity)</a></td>
<td class="nump">150,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Total</a></td>
<td class="nump">$ 150,000<span></span>
</td>
<td class="nump">$ 57,225<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentCarryingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types 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 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/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(1)<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_DebtInstrumentCarryingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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 2: 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(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<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 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 4: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<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 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 6: 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 7: 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 8: 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 9: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 10: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<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> -Subparagraph (e)<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 (f)<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 (h)<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 1D<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<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 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<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 1D<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<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 (a)<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 1E<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<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 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<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 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 22: 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 23: 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)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 24: 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)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 25: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 26: 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><br>Reference 27: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-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_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the next rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the third rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the second rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtTypeAxis=icfi_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongtermDebtTypeAxis=icfi_TermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_LongtermDebtTypeAxis=us-gaap_DelayedDrawTermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongtermDebtTypeAxis=us-gaap_DelayedDrawTermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongtermDebtTypeAxis=us-gaap_LineOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>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="2"><div style="width: 200px;"><strong>Revenue Recognition - Disaggregation of Revenue (Detail) - 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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">$ 487,618<span></span>
</td>
<td class="nump">$ 494,436<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_TimeAndMaterialsContractMember', window );">Time-and-Materials</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">209,046<span></span>
</td>
<td class="nump">206,153<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_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember', window );">Fixed-Price</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">238,072<span></span>
</td>
<td class="nump">224,796<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_ContractWithCustomerBasisOfPricingAxis=icfi_CostBasedContractMember', window );">Cost-Based</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">40,500<span></span>
</td>
<td class="nump">63,487<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=icfi_USFederalGovernmentMember', window );">U.S. Federal Government</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">239,620<span></span>
</td>
<td class="nump">274,195<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=icfi_USStateAndLocalGovernmentMember', window );">U.S. State and Local Government</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">76,865<span></span>
</td>
<td class="nump">76,953<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=icfi_InternationalGovernmentMember', window );">International Government</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">27,075<span></span>
</td>
<td class="nump">25,263<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=icfi_USStateAndInternationalGovernmentMember', window );">Total Government</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">343,560<span></span>
</td>
<td class="nump">376,411<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=icfi_CommercialMember', window );">Commercial</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">$ 144,058<span></span>
</td>
<td class="nump">$ 118,025<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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Revenue from Contract with Customer</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Revenue from Contract with Customer | Time-and-Materials</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">43.00%<span></span>
</td>
<td class="nump">42.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Revenue from Contract with Customer | Fixed-Price</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">49.00%<span></span>
</td>
<td class="nump">45.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Revenue from Contract with Customer | Cost-Based</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">8.00%<span></span>
</td>
<td class="nump">13.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Revenue from Contract with Customer | U.S. Federal Government</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">49.00%<span></span>
</td>
<td class="nump">55.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Revenue from Contract with Customer | U.S. State and Local Government</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">16.00%<span></span>
</td>
<td class="nump">16.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Revenue from Contract with Customer | International Government</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="nump">5.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Revenue from Contract with Customer | Total Government</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">70.00%<span></span>
</td>
<td class="nump">76.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Revenue from Contract with Customer | Commercial</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">30.00%<span></span>
</td>
<td class="nump">24.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember', window );">Energy, Environment, Infrastructure, and Disaster Recovery</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">$ 238,570<span></span>
</td>
<td class="nump">$ 224,692<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=icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember', window );">Energy, Environment, Infrastructure, and Disaster Recovery | Customer Concentration Risk | Revenue from Contract with Customer</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">49.00%<span></span>
</td>
<td class="nump">45.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=icfi_HealthAndSocialProgramsMember', window );">Health and Social Programs</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">$ 169,023<span></span>
</td>
<td class="nump">$ 190,892<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=icfi_HealthAndSocialProgramsMember', window );">Health and Social Programs | Customer Concentration Risk | Revenue from Contract with Customer</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">35.00%<span></span>
</td>
<td class="nump">39.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=icfi_SecurityAndOtherCivilianAndCommercialMember', window );">Security and Other Civilian &amp; Commercial</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from clients</a></td>
<td class="nump">$ 80,025<span></span>
</td>
<td class="nump">$ 78,852<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=icfi_SecurityAndOtherCivilianAndCommercialMember', window );">Security and Other Civilian &amp; Commercial | Customer Concentration Risk | Revenue from Contract with Customer</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation Of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConcentrationRiskPercentage1', window );">Revenue from clients, Percent</a></td>
<td class="nump">16.00%<span></span>
</td>
<td class="nump">16.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="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 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 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-21<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-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 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18<br><br>Reference 5: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="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_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_TimeAndMaterialsContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ContractWithCustomerBasisOfPricingAxis=us-gaap_TimeAndMaterialsContractMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_ContractWithCustomerBasisOfPricingAxis=icfi_CostBasedContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ContractWithCustomerBasisOfPricingAxis=icfi_CostBasedContractMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=icfi_USFederalGovernmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_USFederalGovernmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=icfi_USStateAndLocalGovernmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_USStateAndLocalGovernmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=icfi_InternationalGovernmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_InternationalGovernmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=icfi_USStateAndInternationalGovernmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_USStateAndInternationalGovernmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=icfi_CommercialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_CommercialMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=icfi_HealthAndSocialProgramsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_HealthAndSocialProgramsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=icfi_SecurityAndOtherCivilianAndCommercialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_SecurityAndOtherCivilianAndCommercialMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>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="1"><div style="width: 200px;"><strong>Revenue Recognition - Schedule of Contract Assets and Liabilities (Detail) - 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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [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_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Contract assets</a></td>
<td class="nump">$ 228,314<span></span>
</td>
<td class="nump">$ 188,941<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="num">(27,407)<span></span>
</td>
<td class="num">(24,580)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent', window );">Net contract assets (liabilities)</a></td>
<td class="nump">$ 200,907<span></span>
</td>
<td class="nump">$ 164,361<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contract with customer assets (liabilities), net current.</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;">icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 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_ContractWithCustomerAssetNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<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="2"><div style="width: 200px;"><strong>Revenue Recognition - Additional Information (Detail) - USD ($)<br> $ in Millions</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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [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_us-gaap_ContractWithCustomerLiabilityRevenueRecognized', window );">Revenue related to contract liabilities</a></td>
<td class="nump">$ 12.8<span></span>
</td>
<td class="nump">$ 12.8<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.</p></div>
<a href="javascript:void(0);" onclick="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 8<br> -Subparagraph (b)<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_ContractWithCustomerLiabilityRevenueRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<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="2"><div style="width: 200px;"><strong>Revenue Recognition - Additional Information (Detail 1) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Apr. 25, 2025</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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2025-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date: 2025-01-01</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_icfi_RevenueFromContractWithCustomerLineItems', window );"><strong>Revenue From Contract With Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Unfulfilled performance obligation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,300.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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Expected period to satisfy performance obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2025-04-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date: 2025-04-01</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_icfi_RevenueFromContractWithCustomerLineItems', window );"><strong>Revenue From Contract With Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Unfulfilled performance obligation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 900.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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Expected period to satisfy performance obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<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_RevenueRemainingPerformanceObligationPercentage', window );">Revenue, remaining performance obligation, percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">53.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_icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations', window );">Reduced amount of unfulfilled performance obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300.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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2026-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date: 2026-01-01</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_icfi_RevenueFromContractWithCustomerLineItems', window );"><strong>Revenue From Contract With Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Expected period to satisfy performance obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<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_RevenueRemainingPerformanceObligationPercentage', window );">Revenue, remaining performance obligation, percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">78.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event</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_icfi_RevenueFromContractWithCustomerLineItems', window );"><strong>Revenue From Contract With Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations', window );">Reduced amount of unfulfilled performance obligations</a></td>
<td class="nump">$ 12.0<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_icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase decrease in unfulfilled performance obligations.</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;">icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_icfi_RevenueFromContractWithCustomerLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Revenue from contract with customer.</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;">icfi_RevenueFromContractWithCustomerLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 transaction price allocated to performance obligation that has not been recognized as revenue.</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 Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<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_RevenueRemainingPerformanceObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 remaining performance obligation to total remaining performance obligation not recognized as revenue.</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_RevenueRemainingPerformanceObligationPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2025-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2025-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2025-04-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2025-04-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2026-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2026-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<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="2"><div style="width: 200px;"><strong>Derivative Instruments and Hedging Activities - Additional Information (Details) - Interest Rate Swap - Cash Flow Hedging - Designated as Hedging Instrument<br> $ in Millions</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_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeNotionalAmount', window );">Notional amount</a></td>
<td class="nump">$ 175.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_CreditDerivativesByContractTypeAxis=icfi_JuneTwentySevenTwoThousandTwentyEightMember', window );">June 27, 2028</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_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeNotionalAmount', window );">Notional amount</a></td>
<td class="nump">$ 100.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_DerivativeMaturityDates', window );">Maturity date</a></td>
<td class="text">Jun. 27,  2028<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_CreditDerivativesByContractTypeAxis=icfi_FebruaryTwentyEightTwoThousandTwentyEightMember', window );">February 28, 2028</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_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeNotionalAmount', window );">Notional amount</a></td>
<td class="nump">$ 75.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_DerivativeMaturityDates', window );">Maturity date</a></td>
<td class="text">Feb. 28,  2028<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480237/815-40-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_DerivativeLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeMaturityDates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 derivative contract ends, 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://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477439/946-210-55-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 50<br> -Paragraph 6<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SX 210.12-13(Column A)(Footnote 3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-5<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column D))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-5C<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SX 210.12-13(Column F))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-5<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5A<br> -Subparagraph (SX 210.12-13A(Column C))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-5A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column D))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-5B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeMaturityDates</td>
</tr>
<tr>
<td style="padding-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_DerivativeNotionalAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Nominal or face amount used to calculate payment on derivative.</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 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-1B<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-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_DerivativeNotionalAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_CreditDerivativesByContractTypeAxis=icfi_JuneTwentySevenTwoThousandTwentyEightMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CreditDerivativesByContractTypeAxis=icfi_JuneTwentySevenTwoThousandTwentyEightMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_CreditDerivativesByContractTypeAxis=icfi_FebruaryTwentyEightTwoThousandTwentyEightMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CreditDerivativesByContractTypeAxis=icfi_FebruaryTwentyEightTwoThousandTwentyEightMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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>Income Taxes - Effective Income Tax Rate Reconciliation (Details)<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="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 Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Statutory tax rate</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.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_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes', window );">State taxes, net of federal benefit</a></td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential', window );">Section 987 regulations</a></td>
<td class="num">(14.80%)<span></span>
</td>
<td class="text">&#160;<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_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost', window );">Equity-based compensation</a></td>
<td class="nump">1.50%<span></span>
</td>
<td class="num">(5.40%)<span></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_icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition', window );">Uncertain tax position</a></td>
<td class="nump">3.90%<span></span>
</td>
<td class="nump">2.50%<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_EffectiveIncomeTaxRateReconciliationTaxCredits', window );">Tax credits</a></td>
<td class="num">(11.30%)<span></span>
</td>
<td class="num">(6.70%)<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_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent', window );">Other</a></td>
<td class="nump">4.20%<span></span>
</td>
<td class="nump">3.00%<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_EffectiveIncomeTaxRateContinuingOperations', window );">Effective tax rate</a></td>
<td class="nump">10.50%<span></span>
</td>
<td class="nump">20.40%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective income tax rate reconciliation uncertain tax position.</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;">icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</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_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_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 domestic federal statutory tax rate applicable to pretax income (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/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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.1.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 4: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 applicable to statutory income tax expense (benefit) outside of the country of domicile.</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 12<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<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 12A<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12A<br><br>Reference 4: 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><br>Reference 5: 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(h)(2))<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_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible 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://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/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12A<br> -Subparagraph (b)(1)<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><br>Reference 4: 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(h)(2))<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_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reported income tax benefit (expense) from difference to income tax expense (benefit) computed by applying statutory federal (national) income tax rate to pretax income (loss) from continuing operation, attributable to other reconciling items. Excludes state and local income tax expense (benefit), federal tax expense (benefit), statutory income tax expense (benefit) outside of country of domicile, tax credit, nondeductible expense, deduction, income tax settlement, income tax contingency, and cross-border tax law.</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 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)(3)<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_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 applicable to state and local income tax expense (benefit), net of federal tax expense (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 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)(1)<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><br>Reference 4: 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(h)(2))<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_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits.</p></div>
<a href="javascript:void(0);" onclick="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 12A<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12A<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)(5)<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><br>Reference 4: 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(h)(2))<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_EffectiveIncomeTaxRateReconciliationTaxCredits</td>
</tr>
<tr>
<td style="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>63
<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="2"><div style="width: 200px;"><strong>Income Taxes - Additional Information (Details)<br> $ in Millions</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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Non-cash deferred income tax expense (benefit)</a></td>
<td class="num">$ (4.5)<span></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_icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome', window );">Amortization period of pre-transition foreign currency losses against taxable income</a></td>
<td class="text">10 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amortization period of pre transition foreign currency losses against taxable income.</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;">icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</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_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</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/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(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>64
<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="2" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">3 Months Ended</th>
</tr>
<tr>
<th class="th" colspan="2"><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_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income Loss [Line Items]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<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_StockholdersEquity', window );">Balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 982,459<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ 917,585<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract', window );"><strong>Current period other comprehensive (loss) income:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Total current period other comprehensive (loss) income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(2,713)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">684<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">968,868<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">916,149<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_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember', window );">Foreign Currency Translation Adjustments</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income Loss [Line Items]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<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_StockholdersEquity', window );">Balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(16,383)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(12,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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract', window );"><strong>Current period other comprehensive (loss) income:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<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_OciBeforeReclassificationsNetOfTaxAttributableToParent', window );">Other comprehensive (loss) income before reclassifications</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">3,273<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(1,534)<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_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent', window );">Amounts reclassified from accumulated other comprehensive (loss) income</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1],[2]</sup></td>
<td class="num">(4,094)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<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_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1', window );">Effect of taxes</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">112<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Total current period other comprehensive (loss) income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(821)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(1,422)<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_StockholdersEquity', window );">Balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(17,204)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(14,117)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember', window );">Change in Fair Value of Interest Rate Hedge Agreements and Other Adjustments</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<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_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income Loss [Line Items]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">637<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract', window );"><strong>Current period other comprehensive (loss) income:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent', window );">Other comprehensive (loss) income before reclassifications</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(1,854)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">4,589<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_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent', window );">Amounts reclassified from accumulated other comprehensive (loss) income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(691)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1],[2]</sup></td>
<td class="num">(1,671)<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_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1', window );">Effect of taxes</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">653<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(812)<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Total current period other comprehensive (loss) income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(1,892)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">2,106<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_StockholdersEquity', window );">Balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(1,255)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">2,916<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_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember', window );">Accumulated Other Comprehensive Loss</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income Loss [Line Items]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<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_StockholdersEquity', window );">Balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(15,746)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(11,885)<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract', window );"><strong>Current period other comprehensive (loss) income:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<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_OciBeforeReclassificationsNetOfTaxAttributableToParent', window );">Other comprehensive (loss) income before reclassifications</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,419<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">3,055<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_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent', window );">Amounts reclassified from accumulated other comprehensive (loss) income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(4,785)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1],[2]</sup></td>
<td class="num">(1,671)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1', window );">Effect of taxes</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">653<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(700)<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Total current period other comprehensive (loss) income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(2,713)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">684<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_StockholdersEquity', window );">Balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">$ (18,459)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">$ (11,201)<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company expects to reclassify approximately $</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of unrealized losses related to the Change in Fair Value of Interest Rate Hedge Agreements from accumulated other comprehensive (loss) income into earnings during the next 12 months.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company reclassified $</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.1</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of effect of taxes related to Foreign Currency Translation Adjustments from accumulated other comprehensive (loss) income into earnings in connection with IRC 987. </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">See &#8220;Note 8 &#8211; Income Taxes&#8221;.</span></td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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 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 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 6: 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> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 7: 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> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<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> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, before reclassification adjustments, of other comprehensive income (loss), attributable to parent.</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> -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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 other comprehensive income (loss) attributable to parent 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 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 4: 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 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 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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax expense (benefit) allocated to other comprehensive income (loss) attributable to parent 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 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-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_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reclassification adjustments of other comprehensive income (loss) attributable to parent.</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> -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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_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_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_StatementEquityComponentsAxis=icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementEquityComponentsAxis=icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>65
<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="2"><div style="width: 200px;"><strong>Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (Parenthetical) (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr><th class="th" colspan="2">
<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_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></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_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet', window );">Expects to reclassify unrealized losses related to change in fair value of interest rate hedge agreement from accumulated other comprehensive (loss) income into earnings</a></td>
<td class="nump">$ 100<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></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_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember', window );">Foreign Currency Translation Adjustments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></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_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></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_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent', window );">Amounts reclassified from accumulated other comprehensive (loss) income</a></td>
<td class="nump">$ 4,094<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1],[2]</sup></td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company expects to reclassify approximately $</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of unrealized losses related to the Change in Fair Value of Interest Rate Hedge Agreements from accumulated other comprehensive (loss) income into earnings during the next 12 months.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company reclassified $</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.1</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of effect of taxes related to Foreign Currency Translation Adjustments from accumulated other comprehensive (loss) income into earnings in connection with IRC 987. </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">See &#8220;Note 8 &#8211; Income Taxes&#8221;.</span></td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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 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 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 6: 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> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 7: 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> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<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> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 estimated net amount of unrealized gains or losses on interest rate cash flow hedges as of the balance sheet date expected to be reclassified to earnings within the next twelve months.</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 815<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480870/815-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_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reclassification adjustments of other comprehensive income (loss) attributable to parent.</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> -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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<FILENAME>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>Stockholders' Equity - Additional Information (Details)<br></strong></div></th>
<th class="th">
<div>Mar. 31, 2025 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ShareRepurchaseProgramAxis=icfi_MillionShareRepurchaseProgramMember', window );">300.0 Million Share Repurchase Program</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_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity Class Of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StockRepurchaseProgramAuthorizedAmount1', window );">Stock repurchase program, authorized amount</a></td>
<td class="nump">$ 300,000,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership.</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 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-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;">srt_StockRepurchaseProgramAuthorizedAmount1</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>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityClassOfTreasuryStockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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_EquityClassOfTreasuryStockLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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_ShareRepurchaseProgramAxis=icfi_MillionShareRepurchaseProgramMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareRepurchaseProgramAxis=icfi_MillionShareRepurchaseProgramMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<FILENAME>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="2"><div style="width: 200px;"><strong>Stockholders' Equity - Summary of Repurchase of Shares (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_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Stock Repurchased During Period, Value</a></td>
<td class="nump">$ 39,348<span></span>
</td>
<td class="nump">$ 30,480<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_StockRepurchasedDuringPeriodShares', window );">Stock Repurchased During Period, Shares</a></td>
<td class="nump">355,858<span></span>
</td>
<td class="nump">218,698<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_ShareRepurchaseProgramAxis=icfi_MillionShareRepurchaseProgramMember', window );">300.0 Million Share Repurchase Program</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_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Stock Repurchased During Period, Value</a></td>
<td class="nump">$ 35,052<span></span>
</td>
<td class="nump">$ 23,831<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_StockRepurchasedDuringPeriodShares', window );">Stock Repurchased During Period, Shares</a></td>
<td class="nump">313,048<span></span>
</td>
<td class="nump">172,817<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_ShareRepurchaseProgramAxis=icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember', window );">Vesting of RSUs and PSAs</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_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Stock Repurchased During Period, Value</a></td>
<td class="nump">$ 4,296<span></span>
</td>
<td class="nump">$ 6,649<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_StockRepurchasedDuringPeriodShares', window );">Stock Repurchased During Period, Shares</a></td>
<td class="nump">42,810<span></span>
</td>
<td class="nump">45,881<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityClassOfTreasuryStockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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_EquityClassOfTreasuryStockLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury 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> -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 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-2<br><br>Reference 5: 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(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 6: 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(i)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 7: 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_StockRepurchasedDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-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_StockRepurchasedDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury 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> -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/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-4<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-2<br><br>Reference 7: 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(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<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_StockRepurchasedDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ShareRepurchaseProgramAxis=icfi_MillionShareRepurchaseProgramMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareRepurchaseProgramAxis=icfi_MillionShareRepurchaseProgramMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_ShareRepurchaseProgramAxis=icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareRepurchaseProgramAxis=icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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>Stock-based Compensation - Additional Information (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 04, 2018</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share Based Compensation Arrangement By Share Based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4.0<span></span>
</td>
<td class="nump">$ 5.9<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 41.5<span></span>
</td>
<td class="text">&#160;<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Share-based compensation arrangement by share-based payment award, award vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 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_PlanNameAxis=icfi_OmnibusPlanMember', window );">Omnibus Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share Based Compensation Arrangement By Share Based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Share-based compensation arrangement by share-based payment award, number of shares grants</a></td>
<td class="nump">2,050,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Share-based compensation arrangement by share-based payment award, number of shares available for grant</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">794,760<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 award under share-based payment arrangement. Excludes amount capitalized.</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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<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 (h)(1)(i)<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_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cost not yet recognized for nonvested 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 50<br> -Paragraph 2<br> -Subparagraph (i)<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<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/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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-1D<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-3<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 (a)(1)<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 (a)(2)<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 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: 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)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 7: 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)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 8: 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)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 9: 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)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<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 (c)(1)(iv)(01)<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 (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 12: 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)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 13: 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)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 14: 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)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 15: 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)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 16: 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)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 17: 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)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 18: 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)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 19: 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)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 20: 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 (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 21: 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 (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 22: 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 (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 23: 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 (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 24: 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 25: 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 26: 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)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 27: 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)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 28: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="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 (c)(1)(iv)(01)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=icfi_OmnibusPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_OmnibusPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="2"><div style="width: 200px;"><strong>Stock-based Compensation - Schedule Of Awards Granted (Details) - $ / 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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Awards Granted</a></td>
<td class="nump">291,112<span></span>
</td>
<td class="nump">144,818<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_AwardTypeAxis=icfi_EmployeeStockAwardsMember', window );">Employee Stock Awards</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Awards Granted</a></td>
<td class="nump">218,034<span></span>
</td>
<td class="nump">110,754<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Average Grant Date Fair Value</a></td>
<td class="nump">$ 81.93<span></span>
</td>
<td class="nump">$ 156.16<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_AwardTypeAxis=icfi_CashSettledRSUsMember', window );">Cash-Settled RSUs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Awards Granted</a></td>
<td class="nump">73,078<span></span>
</td>
<td class="nump">34,064<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Average Grant Date Fair Value</a></td>
<td class="nump">$ 84.83<span></span>
</td>
<td class="nump">$ 152.59<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="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 (c)(2)(iii)(01)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="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 (c)(2)(iii)(01)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-1D<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-3<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 (a)(1)<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 (a)(2)<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 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: 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)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 7: 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)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 8: 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)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 9: 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)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<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 (c)(1)(iv)(01)<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 (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 12: 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)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 13: 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)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 14: 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)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 15: 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)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 16: 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)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 17: 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)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 18: 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)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 19: 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)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 20: 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 (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 21: 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 (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 22: 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 (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 23: 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 (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 24: 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 25: 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 26: 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)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 27: 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)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 28: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=icfi_EmployeeStockAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AwardTypeAxis=icfi_EmployeeStockAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=icfi_CashSettledRSUsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AwardTypeAxis=icfi_CashSettledRSUsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="2"><div style="width: 200px;"><strong>Acquisition and Divestiture - Additional Information (Details) - Applied Energy Group, Inc. - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></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>Dec. 31, 2024</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_icfi_AcquisitionAndDivestitureLineItems', window );"><strong>Acquisition and Divestiture [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1', window );">Business acquisition date</a></td>
<td class="text">Dec. 31,  2024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_BusinessAcquisitionDescriptionOfAcquiredEntity', window );">Business acquisition, description</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">AEG an energy technology and advisory services company<span></span>
</td>
<td class="text">&#160;<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_PaymentsToAcquireBusinessesGross', window );">Cash purchase price</a></td>
<td class="nump">$ 60,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Restricted cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,400<span></span>
</td>
<td class="text">&#160;<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,500<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_icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets', window );">Contract assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,600<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_icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities', window );">Accrued expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,600<span></span>
</td>
<td class="text">&#160;<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable', window );">Accounts payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,300<span></span>
</td>
<td class="text">&#160;<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">700<span></span>
</td>
<td class="text">&#160;<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther', window );">Other liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">700<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=icfi_AppliedEnergyGroupIncMember', window );">Trade Names and Trademarks</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_icfi_AcquisitionAndDivestitureLineItems', window );"><strong>Acquisition and Divestiture [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Purchase price allocated to intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 350<span></span>
</td>
<td class="text">&#160;<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 );">Estimated useful lives of acquired intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 months 15 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_BusinessAcquisitionAxis=icfi_AppliedEnergyGroupIncMember', window );">Customer-Related Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_icfi_AcquisitionAndDivestitureLineItems', window );"><strong>Acquisition and Divestiture [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Purchase price allocated to intangibles</a></td>
<td class="nump">$ 21,000<span></span>
</td>
<td class="nump">$ 20,000<span></span>
</td>
<td class="nump">$ 21,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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Estimated useful lives of acquired intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">6 years<span></span>
</td>
<td class="text">9 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_AcquisitionAndDivestitureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Acquisition and divestiture.</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;">icfi_AcquisitionAndDivestitureLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed, accrued expenses and other 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;">icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed contract 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;">icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_BusinessAcquisitionDescriptionOfAcquiredEntity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>With respect to a business combination completed during the period, this element provides a description of the business, other than the name, which may include the industry, size, products and other important information.</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 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-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_BusinessAcquisitionDescriptionOfAcquiredEntity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 when the acquirer obtains control of the acquiree, 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> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 7<br> -SubTopic 10<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479405/805-10-25-7<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 6<br> -SubTopic 10<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479405/805-10-25-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_BusinessAcquisitionEffectiveDateOfAcquisition1</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="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 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="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 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="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 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="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 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="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 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 identifiable intangible assets 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireBusinessesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 business during the period. The cash portion only of the acquisition price.</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 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<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_PaymentsToAcquireBusinessesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=icfi_AppliedEnergyGroupIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_AppliedEnergyGroupIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TrademarksAndTradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CustomerRelatedIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>71
<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>Acquisition and Divestiture - Summary of Preliminary Purchase Price Allocation (Details) - Applied Energy Group, Inc. - USD ($)<br> $ in Thousands</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_icfi_AcquisitionAndDivestitureLineItems', window );"><strong>Acquisition And Divestiture [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital', window );">Net working capital</a></td>
<td class="nump">$ 3,970<span></span>
</td>
<td class="text">&#160;<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="nump">55<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_icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill', window );">Goodwill</a></td>
<td class="nump">31,279<span></span>
</td>
<td class="text">&#160;<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_BusinessCombinationConsiderationTransferred1', window );">Purchase price acquisition</a></td>
<td class="nump">60,654<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=icfi_AppliedEnergyGroupIncMember', window );">Customer-Related Intangibles</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_icfi_AcquisitionAndDivestitureLineItems', window );"><strong>Acquisition And Divestiture [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Purchase price allocated to intangibles</a></td>
<td class="nump">20,000<span></span>
</td>
<td class="nump">$ 21,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=icfi_AppliedEnergyGroupIncMember', window );">Developed Technology</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_icfi_AcquisitionAndDivestitureLineItems', window );"><strong>Acquisition And Divestiture [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Purchase price allocated to intangibles</a></td>
<td class="nump">5,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_BusinessAcquisitionAxis=icfi_AppliedEnergyGroupIncMember', window );">Trade Names and Trademarks</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_icfi_AcquisitionAndDivestitureLineItems', window );"><strong>Acquisition And Divestiture [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Purchase price allocated to intangibles</a></td>
<td class="nump">$ 350<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_icfi_AcquisitionAndDivestitureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Acquisition and divestiture.</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;">icfi_AcquisitionAndDivestitureLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed, goodwill.</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;">icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination, recognized identifiable assets acquired and liabilities assumed, working capital.</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;">icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="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 30<br> -Paragraph 8<br> -SubTopic 30<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479637/805-30-30-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -SubTopic 30<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 7<br> -SubTopic 30<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479637/805-30-30-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_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 identifiable intangible assets 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_BusinessAcquisitionAxis=icfi_AppliedEnergyGroupIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_AppliedEnergyGroupIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CustomerRelatedIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TechnologyBasedIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TechnologyBasedIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TrademarksAndTradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>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>Acquisition and Divestiture - Summary of Estimated Useful Lives of Acquired Intangible Assets (Details) - Applied Energy Group, Inc.<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="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=icfi_AppliedEnergyGroupIncMember', window );">Customer-Related Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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 );">Estimated useful lives of acquired intangible assets</a></td>
<td class="text">6 years<span></span>
</td>
<td class="text">9 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_BusinessAcquisitionAxis=icfi_AppliedEnergyGroupIncMember', window );">Developed Technology</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_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Estimated useful lives of acquired intangible assets</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=icfi_AppliedEnergyGroupIncMember', window );">Trade Names and Trademarks</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_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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 );">Estimated useful lives of acquired intangible assets</a></td>
<td class="text">3 months 15 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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)(2)<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 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-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 1<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-1<br><br>Reference 4: 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)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-1<br><br>Reference 5: 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_AcquiredFiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_BusinessAcquisitionAxis=icfi_AppliedEnergyGroupIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_AppliedEnergyGroupIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CustomerRelatedIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DevelopedTechnologyRightsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TrademarksAndTradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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="2"><div style="width: 200px;"><strong>Earnings Per Share - Schedule of Earnings Per Share Including Dilutive Effect of Stock Awards (Details) - USD ($)<br> $ / shares in Units, shares in Thousands, $ 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 Share [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_us-gaap_NetIncomeLoss', window );">Net Income</a></td>
<td class="nump">$ 26,851<span></span>
</td>
<td class="nump">$ 27,317<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 );">Weighted-average number of basic shares outstanding during the period</a></td>
<td class="nump">18,506<span></span>
</td>
<td class="nump">18,757<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_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Dilutive effect of stock awards</a></td>
<td class="nump">107<span></span>
</td>
<td class="nump">189<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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted-average number of diluted shares outstanding during the period</a></td>
<td class="nump">18,613<span></span>
</td>
<td class="nump">18,946<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 EPS</a></td>
<td class="nump">$ 1.45<span></span>
</td>
<td class="nump">$ 1.46<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted EPS</a></td>
<td class="nump">$ 1.44<span></span>
</td>
<td class="nump">$ 1.44<span></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_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_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="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 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480454/718-10-45-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 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-22<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-23<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-28A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<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>Earnings Per Share - Additional Information (Details) - 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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Awards</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 );">Antidilutive securities excluded from computation of earnings per share, amount</a></td>
<td class="nump">79,863<span></span>
</td>
<td class="nump">10,901<span></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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<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="1"><div style="width: 200px;"><strong>Fair Value - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (Details) - Fair Value, Recurring - 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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Interest Rate Swap | Prepaid Expenses and Other Current Assets</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_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, Total</a></td>
<td class="nump">$ 197<span></span>
</td>
<td class="nump">$ 825<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Interest Rate Swap | Other Assets</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_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">129<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Interest Rate Swap | Accrued Expenses and Other Current Liabilities</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_LiabilitiesFairValueDisclosureAbstract', window );"><strong>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_FinancialLiabilitiesFairValueDisclosure', window );">Liabilities, Total</a></td>
<td class="nump">240<span></span>
</td>
<td class="nump">15<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Interest Rate Swap | Other Long-Term Liabilities</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_LiabilitiesFairValueDisclosureAbstract', window );"><strong>Liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialLiabilitiesFairValueDisclosure', window );">Liabilities, Total</a></td>
<td class="nump">1,716<span></span>
</td>
<td class="nump">153<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Company Owned Life Insurance Policies | Other Assets</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_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, Total</a></td>
<td class="nump">22,927<span></span>
</td>
<td class="nump">23,174<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 2 | Interest Rate Swap | Prepaid Expenses and Other Current Assets</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_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, Total</a></td>
<td class="nump">197<span></span>
</td>
<td class="nump">825<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 2 | Interest Rate Swap | Other Assets</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_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">129<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 2 | Interest Rate Swap | Accrued Expenses and Other Current Liabilities</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_LiabilitiesFairValueDisclosureAbstract', window );"><strong>Liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialLiabilitiesFairValueDisclosure', window );">Liabilities, Total</a></td>
<td class="nump">240<span></span>
</td>
<td class="nump">15<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 2 | Interest Rate Swap | Other Long-Term Liabilities</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_LiabilitiesFairValueDisclosureAbstract', window );"><strong>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_FinancialLiabilitiesFairValueDisclosure', window );">Liabilities, Total</a></td>
<td class="nump">1,716<span></span>
</td>
<td class="nump">153<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 2 | Company Owned Life Insurance Policies | Other Assets</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_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, Total</a></td>
<td class="nump">$ 22,927<span></span>
</td>
<td class="nump">$ 23,174<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 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 2: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-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_AssetsFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsFairValueDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AssetsFairValueDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialLiabilitiesFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 financial obligations, including, but not limited to, debt instruments, derivative liabilities, federal funds purchased and sold under agreements to repurchase, securities loaned or sold under agreements to repurchase, financial instruments sold not yet purchased, guarantees, line of credit, loans and notes payable, servicing liability, and trading liabilities.</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 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 2: 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 3: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-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_FinancialLiabilitiesFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesFairValueDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LiabilitiesFairValueDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_FinancialInstrumentAxis=us-gaap_InterestRateSwapMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InterestRateSwapMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_BalanceSheetLocationAxis=us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BalanceSheetLocationAxis=us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_BalanceSheetLocationAxis=icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BalanceSheetLocationAxis=icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_FinancialInstrumentAxis=icfi_CompanyOwnedLifeInsurancePoliciesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_CompanyOwnedLifeInsurancePoliciesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<FILENAME>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>Commitments and Contingencies - Additional Information (Details) - USD ($)<br> $ in Millions</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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LettersOfCreditOutstandingAmount', window );">Letters of credit</a></td>
<td class="nump">$ 1.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_CreditFacilityAxis=us-gaap_StandbyLettersOfCreditMember', window );">Standby Letters of Credit</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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LettersOfCreditOutstandingAmount', window );">Letters of credit</a></td>
<td class="nump">1.6<span></span>
</td>
<td class="nump">$ 1.6<span></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_icfi_LettersOfCreditGuarantees', window );">Letters of credit guarantees</a></td>
<td class="nump">$ 8.6<span></span>
</td>
<td class="nump">$ 8.2<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_LettersOfCreditGuarantees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Letters of credit guarantees.</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;">icfi_LettersOfCreditGuarantees</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LettersOfCreditOutstandingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the contingent obligation under letters of credit outstanding as of the reporting date.</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_LettersOfCreditOutstandingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LossContingenciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 720<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483359/720-20-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 27<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482395/460-10-55-27<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-4<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-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_LossContingenciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=us-gaap_StandbyLettersOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CreditFacilityAxis=us-gaap_StandbyLettersOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>77
<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="2"><div style="width: 200px;"><strong>Segment Information - Additional Information (Details) - Segment<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="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 [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_us-gaap_NumberOfOperatingSegments', window );">Number of Operating Segments</a></td>
<td class="nump">1<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfReportableSegments', window );">Number of Reportable Segments</a></td>
<td class="nump">1<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration', window );">Segment Reporting, CODM, Individual Title and Position or Group Name [Extensible Enumeration]</a></td>
<td class="text">srt:ChiefExecutiveOfficerMember<span></span>
</td>
<td class="text">&#160;<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_SegmentReportingCodmProfitLossMeasureHowUsedDescription', window );">Segment Reporting, CODM, Profit (Loss) Measure, How Used, Description</a></td>
<td class="text">The CODM assesses segment performance based on consolidated net income as reported on the Company&#8217;s consolidated statements of comprehensive income. The CODM uses consolidated net income to evaluate the Company&#8217;s performance against budgets and decide whether to use the profits to invest in the business, pay down debt, repurchase stock, pay dividends, or fund acquisitions.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning 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/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/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfOperatingSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="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 47<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<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 54<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<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 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 title and position of individual or name of group identified as chief operating decision maker (CODM) 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/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<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 (e)<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 21<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-21<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of how chief operating decision maker (CODM) uses reported segment profit (loss) measure to assess performance and allocate resource.</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 47<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<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 54<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>78
<FILENAME>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="2" rowspan="2"><div style="width: 200px;"><strong>Segment Information - Schedule of Segment Revenue, Significant Segment Expenses, and Segment Profit (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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 487,618<span></span>
</td>
<td class="nump">$ 494,436<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_icfi_SignificantSegmentExpensesAbstract', window );"><strong>Significant segment expenses:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></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_icfi_DirectLaborAndRelatedFringeCosts', window );">Direct labor and related fringe costs</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">191,930<span></span>
</td>
<td class="nump">190,023<span></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_icfi_SubcontractorsAndOtherDirectCosts', window );">Subcontractors and other direct costs</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">110,612<span></span>
</td>
<td class="nump">120,510<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_SellingGeneralAndAdministrativeExpense', window );">Indirect and selling expenses</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">131,891<span></span>
</td>
<td class="nump">129,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_DepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">14,795<span></span>
</td>
<td class="nump">13,865<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_InterestExpenseNonoperating', window );">Interest expense</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">7,423<span></span>
</td>
<td class="nump">8,329<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 );">Provision for income taxes</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">3,150<span></span>
</td>
<td class="nump">7,019<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherItemAmount', window );">Other segment expense (income)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">966<span></span>
</td>
<td class="num">(1,721)<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_NetIncomeLoss', window );">Net income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">26,851<span></span>
</td>
<td class="nump">27,317<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=icfi_SegmentDepreciationAndAmortizationMember', window );">Depreciation and Amortization</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_icfi_SignificantSegmentExpensesAbstract', window );"><strong>Significant segment expenses:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">5,318<span></span>
</td>
<td class="nump">5,574<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=icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember', window );">Amortization of Intangible Assets Acquired in Business Combinations</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_icfi_SignificantSegmentExpensesAbstract', window );"><strong>Significant segment expenses:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_DepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 9,477<span></span>
</td>
<td class="nump">$ 8,291<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Other segment expense (income) includes interest income, foreign currency expense, and gains/losses on disposition of assets.</span></td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_DirectLaborAndRelatedFringeCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Direct labor and related fringe costs.</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;">icfi_DirectLaborAndRelatedFringeCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_icfi_SignificantSegmentExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Significant segment expenses.</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;">icfi_SignificantSegmentExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_icfi_SubcontractorsAndOtherDirectCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Subcontractors and other direct costs.</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;">icfi_SubcontractorsAndOtherDirectCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>icfi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_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_InterestExpenseNonoperating">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 nonoperating.</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 22<br> -Subparagraph (d)<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 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_InterestExpenseNonoperating</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="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_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="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_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=icfi_SegmentDepreciationAndAmortizationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_SegmentDepreciationAndAmortizationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>79
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    (   QHEI&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    (   QHEITHA$Z]    "L"   1
M9&]C4')O<',O8V]R92YX;6S-DE%+PS 0Q[^*Y+V]M&,Z0M<7Q:<-! >*;R&Y
M;<$F#<E)NV]O&K=.T0\@Y"5W__SN=Y!&>:'Z@$^A]QC(8+P9;>>B4'[-CD1>
M $1U1"MCF1(N-?=]L)+2-1S 2_4N#P@UY[=@D:26)&$"%GXFLK;12JB DOIP
MQFLUX_U'Z#),*\ .+3J*4)45L'::Z$]CU\ 5,,$(@XU?!=0S,5?_Q.8.L'-R
MC&9.#<-0#HN<2SM4\+K=/.=U"^,B2:<PO8I&T,GCFETFORSN'W:/K*UYO2QX
M.O6NXH+?B>7J;7+]X7<5MKTV>_.?C%>"\V_&%\&V@5__HOT$4$L#!!0    (
M   QHEJ97)PC$ 8  )PG   3    >&PO=&AE;64O=&AE;64Q+GAM;.U:6W/:
M.!1^[Z_0>&?V;0O&-H&VM!-S:7;;M)F$[4X?A1%8C6QY9)&$?[]'-A#+E@WM
MDDVZFSP$+.G[SD5'Y^@X>?/N+F+HAHB4\GA@V2_;UKNW+][@5S(D$4$P&:>O
M\, *I4Q>M5II ,,X?<D3$L/<@HL(2W@4R]9<X%L:+R/6ZK3;W5:$:6RA&$=D
M8'U>+&A T%116F]?(+3E'S/X%<M4C66C 1-702:YB+3R^6S%_-K>/F7/Z3H=
M,H%N,!M8('_.;Z?D3EJ(X53"Q,!J9S]6:\?1TDB @LE]E 6Z2?:CTQ4(,@T[
M.IU8SG9\]L3MGXS*VG0T;1K@X_%X.+;+THMP' 3@4;N>PIWT;+^D00FTHVG0
M9-CVVJZ1IJJ-4T_3]WW?ZYMHG J-6T_3:W?=TXZ)QJW0> V^\4^'PZZ)QJO0
M=.MI)B?]KFNDZ19H0D;CZWH2%;7E0-,@ %AP=M;,T@.67BGZ=90:V1V[W4%<
M\%CN.8D1_L;%!-9ITAF6-$9RG9 %#@ WQ-%,4'RO0;:*X,*2TER0UL\IM5 :
M")K(@?5'@B'%W*_]]9>[R:0S>IU].LYKE']IJP&G[;N;SY/\<^CDGZ>3UTU"
MSG"\+ GQ^R-;88<G;CL3<CH<9T)\S_;VD:4E,L_O^0KK3CQG'U:6L%W/S^2>
MC'(CN]WV6'WV3T=N(]>IP+,BUY1&)$6?R"VZY!$XM4D-,A,_")V&F&I0' *D
M"3&6H8;XM,:L$> 3?;>^",C?C8CWJV^:/5>A6$G:A/@01AKBG'/F<]%L^P>E
M1M'V5;S<HY=8%0&7&-\TJC4LQ=9XE<#QK9P\'1,2S90+!D&&ER0F$JDY?DU(
M$_XKI=K^G-- \)0O)/I*D8]ILR.G=";-Z#,:P4:O&W6':-(\>OX%^9PU"AR1
M&QT"9QNS1B&$:;OP'J\DCIJMPA$K0CYB&38:<K46@;9QJ81@6A+&T7A.TK01
M_%FL-9,^8,CLS9%USM:1#A&27C="/F+.BY 1OQZ&.$J:[:)Q6 3]GE[#2<'H
M@LMF_;A^AM4S;"R.]T?4%TKD#R:G/^DR- >CFED)O816:I^JAS0^J!XR"@7Q
MN1X^Y7IX"C>6QKQ0KH)[ ?_1VC?"J_B"P#E_+GW/I>^Y]#VATK<W(WUGP=.+
M6]Y&;EO$^ZXQVM<T+BAC5W+-R,=4KY,IV#F?P.S]:#Z>\>WZV22$KYI9+2,6
MD$N!LT$DN/R+RO JQ GH9%LE"<M4TV4WBA*>0AMNZ5/U2I77Y:^Y*+@\6^3I
MKZ%T/BS/^3Q?Y[3-"S-#MW)+ZK:4OK4F.$KTL<QP3A[+##MG/)(=MG>@'37[
M]EUVY".E,%.70[@:0KX#;;J=W#HXGIB1N0K34I!OP_GIQ7@:XCG9!+E]F%=M
MY]C1T?OGP5&PH^\\EAW'B/*B(>ZAAIC/PT.'>7M?F&>5QE T%&ULK"0L1K=@
MN-?Q+!3@9& MH >#KU$"\E)58#%;Q@,KD*)\3(Q%Z'#GEUQ?X]&2X]NF9;5N
MKREW&6TB4CG":9@39ZO*WF6QP54=SU5;\K"^:CVT%4[/_EFMR)\,$4X6"Q)(
M8Y07IDJB\QE3ON<K2<15.+]%,[82EQB\X^;'<4Y3N!)VM@\",KF[.:EZ93%G
MIO+?+0P)+%N(61+B35WMU>>;G*YZ(G;ZEW?!8/+]<,E'#^4[YU_T74.N?O;=
MX_INDSM(3)QYQ1$!=$4"(Y4<!A87,N10[I*0!A,!S93)1/ "@F2F'("8^@N]
M\@RY*17.K3XY?T4L@X9.7M(E$A2*L P%(1=RX^_ODVIWC-?Z+(%MA%0R9-47
MRD.)P3TS<D/85"7SKMHF"X7;XE3-NQJ^)F!+PWING2TG_]M>U#VT%SU&\Z.9
MX!ZSAW.;>KC"1:S_6-8>^3+?.7#;.MX#7N83+$.D?L%]BHJ $:MBOKJO3_DE
MG#NT>_&!()O\UMND]MW@#'S4JUJE9"L1/TL'?!^2!F.,6_0T7X\48JVFL:W&
MVC$,>8!8\PRA9CC?AT6:&C/5BZPYC0IO0=5 Y3_;U UH]@TT')$%7C&9MC:C
MY$X*/-S^[PVPPL2.X>V+OP%02P,$%     @  #&B6A7[PNV[!0  PQX  !@
M  !X;"]W;W)K<VAE971S+W-H965T,2YX;6RUF5%SHS841O^*QIWI4QR#<)QD
MFWC&(4F;:9+UQNEVMIT^*" ;9@&YDK"3_OI> 09G1UQ[F?4^;,#F?M9!0AS0
MQ5K(KRKB7)/7-,G492_2>OEA,%!!Q%.FCL629_#-7,B4:=B5BX%:2L["HBA-
M!M1Q1H.4Q5EO?%%\-I7C"Y'K),[X5!*5IRF3;U<\$>O+GMO;?/ 4+R)M/AB,
M+Y9LP6=<_[&<2M@;U"EAG/),Q2(CDL\O>Q/W@^]14U <\3GF:[6U30S*BQ!?
MS<Y=>-ES3(MXP@-M(AC\67&?)XE)@G;\6X7VZM\TA=O;F_3; AY@7ICBODC^
MC$,=7?;.>B3D<Y8G^DFL?^,5T(G)"T2BBO_)NCQV"+\8Y$J+M"J&_33.RK_L
MM3H16P5TV%) JP+Z38';5N!5!5X!6K:LP+IFFHTOI%@3:8Z&-+-1G)NB&FCB
MS'3C3$OX-H8Z/;X600Z]HLDD"\E-IF/]1NZR<GB8T]PG*F*2JXN!AE\S-8.@
M2KXJDVE+LD<>1*8C!:DA#]_7#Z"5=5/IIJE7% U\8/*8>.X1H0X]L;3'Q\LG
M2RBG)[;R=\WQZC/G%7E>2YXO5ER2OR<O2DL8C/_8SE"9,+0GF"OT@UJR@%_V
MX!)47*YX;_SS3^[(^<6&]X/"WL$.:]@AECZN1L837\0&%\;+(TNY#1G/N?-O
M87AI+K-B>+'D"':#8QLN&M01]Z3&/=D'UX<+0[($FACR5_([?[,!XTF.X[C>
M"";5H8T1K>W(.*H91VC+GB4+XVQ!9F_IBTAL9'@]=.6=C0FMZLAT6C.=HFV:
M\2"7IN=N7H.(90O>.DSQG,?)['KRR4:'UG6D.ZOISM!6^;F49JJ^C54 H_(+
M9]),K@0F?BLCGM;ON[3ON39(M+ CY'D->;[/I7<;)S"[^D"V$-)ZW>$Q]TQ"
M[T^" (1!0DI8)MIHT:".M*[3W'^=?7AG*4L2<I4K^%K9[[9XSIPERC8*?+RN
M*]^67[C[\-VD7"[,=/,K).B(^")=LLS:L3L"VT'1NJZ@M &E>]TS1)J"-\VT
M"+X>D5DA3^1CKI5FF9EOK<1H\O=Z0I5V4J09C5^-W;.A"_] >U8VQD9Y7%0R
M&EM\?EM:IYP=]:[3M\ZJ>%G7KFODQL6MI,::<AF+$)U4=T35DMIJJ7A 5];&
M;%Q<2&K6[;O(+7QHGW3PL%;&0XB-VYB-BZO)MXQ5M[93XG&?K#=)O*@K8V,Z
M+JXH$P ,2\B$V6<5/*!]'CV$X[B-Y+BXEVSFT4IVGOA22%V(JF:ZI?_PQ"_6
MQU<?K^K*V7B.NY?HS"(.-W[L=HC'M'?C(;R&-EY#]_(:8UWD,4]?K.YUM2,$
M'I[ZGN<,[8_[AQ ;VH@-W4MLGMDKN0MAI,;S."C?F2"X>"0%(1^-W*%W9N4]
MA-_0QF_H7GX#C^M"PB59HIIKDL/HS>%!V;A/:+UG[DB^OK'B_B I>H_;J [%
M5:7"G80AI*NCS0:YA^/(Q\S.N<-^SAT*\YG2<.(>N):"3!/V'[/"'T*(:"-$
M=*_7/36\;_:$),]BG5G!\;B2V<IY"!FBC0S1O=[SU)SE< ;0J12K. OLO8QG
M?IY800]A1+0Q(HHKS+>@4P'/(PGY*UZV7[1X(G5@.%M)#^%%M/$BBFM-,50G
MDK-V,#S@U/&L6(>P(MI8$<4=YEX4(AN)#+V=XB'GWK#O.8Z]VPYA0[2Q(8IK
MS'.L013$G' 61"1(F/TER(Z4[8=O*^0AG,AKG,C;RXF*%^#E^I5YS&0;U[6N
M(.")+6J+5W7E;-3(PSVF?O[ZE#,)K,E;I?%60CQ+R]RJMWA95\3&AKP=SE*_
M"9$L4W$A0P@C'M;J\'C=]T(.MI8)S>NX8O54D<#86[EB6']:K]!.BG7)07-X
MN;S[P,S;/$42/H=2Y_@4;F^R7#$M=[18%HN.+T)KD1:;$6<AE^8 ^'XNA-[L
MF!^HUZW'_P-02P,$%     @  #&B6N%N%2#0!P  >2(  !@   !X;"]W;W)K
M<VAE971S+W-H965T,BYX;6RM6FMOV[@2_2N$MUBT@%/S(>K1) ;2I+M;(-L$
M37OO9T9F8J&2Z*7HI+F__HYD1[+%AYM[\Z&-90]'9X;#.8>43AZ5_M$LI33H
M9U76S>ED:<SJPVS6Y$M9B>:]6LD:?KE3NA(&+O7]K%EI*1;=H*J<48SC626*
M>C(_Z;Z[UO,3M39E4<MKC9IU50G]]%&6ZO%T0B;/7WPM[I>F_6(V/UF)>WDC
MS??5M8:K6>]E452R;@I5(RWO3B=GY,-Y1-L!G<6_"OG8['Q&;2BW2OUH+SXO
M3B>X121+F9O6A8 _#_)<EF7K"7#\LW4ZZ>_9#MS]_.S]CRYX".96-/)<E?\N
M%F9Y.DDG:"'OQ+HT7]7C7W(;$&_]Y:ILNO_1X]863U"^;HRJMH,!0574F[_B
MYS81.P-(Y!E MP/HKPY@VP&L"W2#K OK0A@Q/]'J$>G6&KRU'[K<=*,AFJ)N
MI_'&:/BU@'%F?G[UY>;J\O/%V;=/%^CCV>79E_-/Z.:O3Y^^W:"WW[^<?;_X
M#+^\0T?H^\T%>OOF'7J#BAI]6ZIU(^I%<S(S@*+U-<NW=_RXN2/UW/%OH=\C
M1J:(8LH=P\_#PR]DW@^/]H?/(/8^ ;1/ .W\,5\"UEK+VJ"SII&F^>"*9^,@
M<CMHU]F'9B5R>3J!A=1(_2 G\]]_(S$^=D7W2L[V8F5]K"SD?7XNFB6"64-Y
M^T'^LRX>1 G!.V=QXRKN7+7-X&'.$Y*>S!YVH[&-HBS&O=$>RJA'&051?I6-
MT45NY :G"]O& =^Y+4E9$HW .:Q8RA,W.MZCX^$<JMIH:#[0PW()^;LM93-%
MM30NG-Q"0%E,8C("ZC#C<4:9&VG<(XU_#:GH2MN%+[9O3%-&QHFTS4B:9A%Q
MXTMZ?$D0W[66*U$LD/P)G-3(IJM,9992!Q G-F)"TFP$V&G%//E,>[QI$._G
M.E>51$;\W)E[%\;43A=.V BB;113W\K)>H19$.$W942)]CN:"V!FW9L3G-)Q
M%FVS**-X9YGM@21XH!Q\8.)!A6CSU$WX)^A"*] %QKN(MM[V4L5@?8S0NLQB
MCCV33G8(D@0)XJJKR  ];,>_$C^\EK?]: <V)$$"FO^IU.*Q*$MGH-0N;,H)
MR:RI<!E&:<JY9S(& B-A!MM,1E$;4=\7L/RVG<)?.\RQ%FE,DC%BAQTA"?:T
M.#)P&0F3V154NC!%?8]*"6H3=)1NA>61NCM:-S+0Z(B#O0C-^+@W.^TX9S[D
M \^1,-%=R#L)C60!V7[N>]*-U*:O"+KM&*=M!47K6YT#QY$PR5T=X OBH+@L
MM>??-F,8I[$'WD!Q),QQFX[L[\3$P50XX3@;"RVG80Q]T)?!@=5(^DL"^+(0
MMT59F$)ZVER0'5_<YE[)VW[0 U&2,%.>Y;E:@_!%*_'DHW%B\Q^A%%MBPV7'
M,TZI>V;HP),TS).]@"N'J7'N3VSFHTF$QS7N,HMXZM$<="!(&J0DJ\4=0DOL
M=&5)1L=H;3-8&=33UNC.=B],<'\4M:AS^8M8;2*CL.;&4%U6Q#?] ]?1,-=!
MC>HU]-]&E$(76WU\*VMY5[B;";5)+ $F&'=BAQG!/$D\G80.7$?#7-<#7M_F
MV])5>E?6+PH0S@;EJO$$8',9)VD2CP.PS4"8)K[2&!B/AAGO&;]C0Y)OF^2A
M>K%)+J4DLPK&819[Q08=R)"&R7!?_U\>P.J@O)1P:K4-VRZ*,N+M&P,WTB1(
M/)>JOC\R4E<'J8<&2?;%)S"OY&T_[(%O:7@;.82]D+=.T4KMO2''%$=CZ>>P
M ^&51+Z%/+ C#;-CH*.#@*U5?;1=#T[T+CJDA(X5C=..9\RS1V #;;(P;7H[
M_&'LS*9(:(W9N(.ZS B-/>N7#4S*#C!IUVO*OD .=!MF4R3/,F:=T3G,H-W[
M\CPP*0LSZ:;;'.@RS+$5)#BF#(]1.@QQRM+,<]S =@X]#YQZJJHJ3'O$L.GH
MK:R"VI9UWM;$VR_*2$2B=T[T0<_N5H%</><5'.U'/Y RBX)=]L:H_,=2E0NI
MF]]_ S9*CKLS%_/D;+4L2/$O;;6OY6T_]H'069C0K_7S'K9ILS %M:_1@RC7
M$KUYCS$Y1GR*,6[_H68I=$OY:[-4NOB/7!RWS4*BHFE $SA3%;SY2XKC_W>T
MGZ!!,+!#1\15I6IO=A(<2@^-I@S3:4IYMZS@DJ3Q-(OIL_$F=4@8]+?0^;)_
MZ-.97\A<5K?0[IZ?Y4P1C%G)[K%>^72,2#J-:#REV<8>+N.XO>RQJ+5I#/S4
M\M3_= _GI#K."\:\&[;9GXI!#;'P2<'98E&T#S:AI;:GXD=%C7*Q*J#%.F':
MQP%1E,31>&_JM&-1[)$(;% Q+*QBODHCX"L0RT+7, /NYF\+E#3+,!\__W#9
M)5&2>+90;! R[,"!N 8-L-9/SQ7.I[";F'*&N_+@4T[Q-$[Z@GV]*K*US1$#
M'9&-Q;73D&+,/?44#2HH"JL@V,RLJW4IVL=HVSV,JJ!_+-M'\ ^@BU3CG+/(
MUC9')(WXN+*<=CR)/$=FT2""HK (VL@*/VTY0=L2)XO3-!Y+(9==2G>#VP<]
M:*'HA5JHJYP7!D&MAZGNLT"GH>LL<+;S7D#[4@84]WU1-Z",[V D?I] (O3F
M/8?-A5&K[E6!6V6,JKJ/2RD ?FL O]\I$$O;B_;M@_YMD_E_ 5!+ P04
M"   ,:):CLVBP"P#  !)"@  &    'AL+W=O<FMS:&5E=',O<VAE970S+GAM
M;*V66V^;,!3'OXK%IJF5NF!(N*1+D-(D52MU;;2TV\.T!P><8!4PLTW2[M//
M!LI"0F[;\A!\.>?OWSD<8_=6E#WS$&,!7N(HX7TM%"*]U'7NASA&O$53G,B9
M.64Q$K++%CI/&49![A1'N@FAK<>())K7R\<FS.O13$0DP1,&>!;'B+U>X8BN
M^IJAO0U\(8M0J '=ZZ5H@:=8/*43)GMZI1*0&"><T 0P/.]K ^-R:$#ED%M\
M)7C%U]I A3*C]%EU;H.^!A41CK OE 22CR4>XBA22I+C9RFJ56LJQ_7VF_IU
M'KP,9H8X'M+H&PE$V-=<#01XCK)(?*&K&UP&9"D]GT8\_P>KPM;N:L#/N*!Q
MZ2P)8I(43_12)F+-P>CL<#!+!_-8AW;IT,X#+<CRL$9((*_'Z HP92W55"//
M3>XMHR&)>HU3P>0LD7["&S[<3Q_N;D>#Q_$(7 WN!O?#,9C>C,>/4W#V=#]X
M&MW*F7-P-D$,)R+$@O@H.@<?P7N@ Q[*4=[3A211>KI?KGI5K&KN6/4S8BW0
M-BZ "4VKP7VXWWV$_<J]4W?79?Q5$LPJ"6:NU]ZA-Q5(8%F; M YN"8)2GR"
M(C"AG.2U]GTPXX+)BOO1%&JAW6G65MOPDJ?(QWU-[C..V1)KWH=WA@T_-07^
MG\1J:6A7:6CO4_<F<@=AQG  9-GYSQ<@10PL491A<$82$- H0HR#%+/BQ9\W
M9:-8PLF74-^0I0=;$!H]?;D>YB&K&G^GXN^<QE^4)T"9""DCO^2$BJ,8;80O
M]*TU+ OFOPW\PW:U *PJ .NO B"<9X?AK2VH3>Q]%C5@NP*V]P(/:1S+_?$/
MY6(?52Z'K&KP3@7OG !_?)$X6UET8&.5'&%8 W<K</<$\..*P]UB,3MM:+KJ
M\UN#;C(T7+MKF\W0W0JZ>P*TO%!P@9* )(M#Y-TM(,/MF+;9W21O,K1M:;@C
MW0;\<T;"O>R/\H+$,_:ZL2T/@)>BM:^$Z]A6>[-.F@PM$]K.9LKUM7->7;+D
M,;H@"0<1GDM/V'*D!"ON+45'T#0_^F=4R(M$W@SE70\S92#GYY2*MXZZ352W
M1^\W4$L#!!0    (   QHEHK;1-1%04  ,83   8    >&PO=V]R:W-H965T
M<R]S:&5E=#0N>&ULK9A=;^(X%(;_BL6.5AVI;6+GFP4D2AD-TI96I9VY6.V%
M2PQ$D\2L;:"SOWZ=#Q)(''=6XH;$X9R3Y]C'?F,/#I3]X!M"!'A/XI0/>QLA
MMGW#X,L-23"_I5N2RG]6E"58R"9;&WS+" YSIR0VD&FZ1H*CM#<:Y,^>V&A
M=R*.4O+$ -\E"68_[TA,#\,>[!T?/$?KC<@>&*/!%J_)@HC7[1.3+:.*$D8)
M27E$4\#(:M@;P_X$V9E#;O$M(@=^<@^R5-XH_9$U9N&P9V9$)"9+D87 \K(G
M$Q+'623)\4\9M%>],W,\O3]&_Y(G+Y-YPYQ,:/P]"L5FV/-[("0KO(O%,SU\
M)65"3A9O26.>_X)#:6OVP'+'!4U*9TF01&EQQ>]E1YPXR#AJ!U0ZH*:#W>%@
ME0Y6GFA!EJ=UCP4>#1@] )99RVC93=XWN;?,)DJS85P()O^-I)\831[GB\<_
M9_?CE^D]6+S(R\-T_K( CU_ Y/'AZ7GZ=3I?S+Y-P6PNVU-P]3H?O][/I/5G
M< ->%_?@ZM-GP#>8$0ZB%+QLZ([C-.37X--9>V (B9N]U%B6:'<%&NI L\ #
M3<6&@VD:DO#<WY!I5KFB8ZYW2!OP ;-;8,%K@$SD*'@FO^YN:W"LJNNM/)[5
M$6^6+FE"P$)@0>3$$."O\1L73!;VWZK.*H+9ZF#9;._S+5Z284].9T[8GO1&
MO_\&7?,/5:87"G:6MUWE;>NBCY[)GJ0[HLJQ<'1SQVP!VH]LWW.A/S#VI_0*
ML\"V+;<R.^-R*BY'RW4?,;FV@"7E0EFMA;=S\E9+UI&-&G *,V@ZEJ6&<RLX
M5ULLCUO"L(C2=<$'Y)0"Y%TNYISPOHK6O62Y7"C86>9>E;FG'999&A8#DZ4L
MU_\XZX1CZJK,O=8 0 OZ 6R,D\(,!69@J\?)KVA]?1$1V07+"!<:)8EQ0IF(
M_LT?J&C]-H;M!4X#5F%E^:ZC9@TJUD#+^D(%C@'55)8*.%  NZ[O-HA59BAP
M C4R-&N],K70]42(\O53J2MF>P[Z5F V$!5FMBR C@J )Y(*/ZA80>0\$-<@
M)4+)!ULOOO$LRVOR*<Q\9/D=?*CF0_HN%!O"P%4YR)]U'8G:!'(Q:RYY"C/H
M6F8'9ZV/4"M#1X%\(_)KE9240.!W=5V6P<[79]-L3GN5F6UU:0>L10WJ5>V)
MT7V4?]Q*VH]A;85*.*T";5MY)NR:0K7.0;W0S>7N0#/F3DM=D>L[K7Y4F'D6
M]#K@:IV#>J&;8I;*V<V!G.=@D7U7*N4-7E3?+A7M/.=:X:!>XNXPCY;*+ L_
M_W1BW=I-<5!;=55TK63P RF+XIUH?GB77+[JC7:3ZP.K<ZY:M6"@K9#O^=:,
MA#=X+Z5@38HJ47\%0:T"_N\RN5"T\]U++7U(+WV=98+:0@9]QVQ*LM+,<SJF
M+*KU#NGU3E,HJ"UAT'>AU213F05=)8QJI4-ZI9M@O@%AM(]"(K>@<GN_C&6I
MA/G:(M>_1*[6^=95B8Y:U6O>PF:-?V1U#EY+'])+7R'1$E$6TB8[--D3<!53
MSH]JG7]; +K*)$9);[66YQODM3N^;>;Z7?2U%B*]%D[.N'\1N+VI0S:TFEL_
ME9E_JO(%LG%R(I(0MLX/BKCLT%TJB@.#ZFEQ&'4'^Y/\S*;Q? S[X_QHQJC#
M%"=<#YBMHY2#F*QD2//6D]7+BD.CHB'H-C]W>:-"T"2_W1 <$I89R/]7E(IC
M(WM!=70W^@]02P,$%     @  #&B6C23UMYX!P  _#D  !@   !X;"]W;W)K
M<VAE971S+W-H965T-2YX;6RU6VUSFS@0_BL:7^>NF3G72+SWDLRD-M#,M4DN
M3N[F/E*LQ$PQN" GS;\_@:DQ2)8AM_V2&+/[K+3/LHA'YO0YR[\62TH9^KY*
MTN)LM&1L_7XR*:(E787%NVQ-4W[F(<M7(>.'^>.D6.<T7%1.JV1"-,V:K,(X
M'9V?5M_=Y.>GV88E<4IO<E1L5JLP?_E D^SY;(1'/[ZXC1^7K/QB<GZZ#A_I
MG++[]4W.CR8[E$6\HFD19RG*Z</9Z *_#XA;.E06?\?TN=C[C,JI?,FRK^7!
MY>)LI)4CH@F-6 D1\G]/=$J3I$3BX_A6@XYV,4O'_<\_T/UJ\GPR7\*"3K/D
MGWC!EF<C9X06]"'<).PV>_Y(ZPF9)5Z4)47U%SW7MMH(19N"9:O:F8]@%:?;
M_^'W.A%[#E@_X$!J!]+70:\=](X#L0\X&+6#T8W@'' P:P>SZV ><+!J!ZOC
MH!\:DET[V!59V^Q6U,Q"%IZ?YMDSRDMKCE9^J/BMO#DC<5J6XISE_&S,_=CY
M]/IJ?OWI<G9QY\W0_([_^^Q=W<W1M<^/KJ=_?KS^-/-NY[\A[Z_[R[M_T=O[
MJXO[V26W/D%C=#^?H;=O3M ;%*?H;IEMBC!=%*<3QD=6XD^B>A0?MJ,@!T9Q
ME[$PD;A-U6[3;+7BY3QG6?15XCU3>U\L%G%Y.80)N@GCQ9A/81JN8_E(/#76
M+67\LJ<+Y(5Y&J>/LASX1W+ .TFQR5\.3B<X,ITHVJPV2<CX**[9DN:(IX>W
MIV79-YXH^I05G5%->*WL"H;L"H9488P#83Z$29A&%(4,S6CT#NGX=T0THLM(
MWR)9%5+9$Y_.76R;CGDZ>=HG630C1MMD)IH8!)L::9MYHIEMFYKKMLU\T6Q,
M+!N;G8$%$CN,G;WQMS*H[S*H]\K@6UYPQ3+,:7'2*YM*U/*6];Y8AQ$]&W'2
M"YH_T='YK[]@2_M#=F%MP<R]J?&)&9:F:9W,0T;U(,%\2+  "*Q5$,:N((R?
M4A!*U*$% 0DV@P3S(,%\0ZA[$^MBV0= 05OU8.[JP536PQ5?@5ZF4;;B)5%V
M[1,9^:8P$6+KV.ZT5F6@H:Q"@GF]QN]#A@R P%J<6CM.+26GVSMRU+HCQS7'
MR2&.+2%'EM.Y,TZ588<R# GF08+YD&"!.J\M?NT=O[:27^_;)F8O%<&<W;!<
M5\H8M87(NFGB#J7*2$,I[1/1@XSH0X(%0& M3IT=IXZ:T^\TC^*"HNP!%>6B
M'&7KDECI XXC+JBT;C=6AAM*;(^ 'F1 'Q(L  )K\>KN>'5?Q^O^"DS&L1)V
MZ(++%6^ XNH;,J('">9#@@5 8*UJP%HC@6C*>K@LBDVU "_KH6(?K3=Y^1U#
M+$-/M&#\D;X\RT^Q/([*1^QMX6S2F!TM&W7XH753H[4N?&**I0,:U0-%\T'1
M BBT=OGL*6A863XWX<N*IKP,'K)\6P:\3G@!1<NPH'(Q# L4CG7-L+O"B#KP
MT!L&*)H'BN;7:-:1C 104=M4-]H75HM?:JJ/]@$E^. ^0,0B(MB1- +(L!XH
MFB^9A&P. 534-N^-8H?5DMTL?HH7-%T4:$&CA!.\D/(KBFIC8A&M>U5#"E<S
M4#2OWQ1\T* !%%J;W$9]P_WDMY"ASV&^D]P,*<6B?N1B"QMNEV/CN*8MP3*(
MR:?56<1+[&S7M5VK2XH8<TQ<V]*%BTD$'&-,-"Q_!,:-;H75PM4!(?-X5B%E
MGBD6I27LV*9LB02J:(&B^:!H 11:NS :\0NKU:]7%P:D[#,%19N!HGF@:#X6
M%2Y3-PW)?14H;+LN&M$,JU6S YN)\EJPQ=U$AQBFT'I%.['UBJJ88>B&I7=;
MKVCGV(9MDV[K%6..=?XX;QK=?(N 8VS:AG6@]392%59K53WVD.19A51UIE@B
M2CF6)=E6!(WK@:+YH&@!%%J[,!JM"ZO%KE<7AJA/F2;1K&[M3]7Q!W=54,4+
M%,T_D!))5_T9>A9I]"RBUK-Z[1_6&*TV:3G"7H0ZU%!V0=$\(BIADBGXH$$#
M*+0VMXW81-1BTZOV$8E$;R(VUKM<@\I-H&@>*)H/BA8<36^;Z[U?6JG5IIY[
MBD344 Q^U^V2"ZG;S'K%]$!C^J!H 11:F]M&42)J1>EG[SFHPP]=UQ')S\6P
M9%4'&M4#1?-!T0(HM';Y-)H546M6P_<<B$3TT5W=$&X"H#\$ T7S0-%\(M'+
M)!D)H**VJ6Y$-:(6U?[?GH,:?' ?$*6UL6[*&@&HL@:*YDLF(9M# !6US7NC
MF1&U9M9OSX&(2L^8F,)#FCK6X*L:5/KJ-P4?-&@ A=8FMQ&^2&_A:U\$-:44
M2X0ORW$LI\MQ#^%+8F,8MM7=O_ D=H[K:N*SE4SX,EW=M;L7D\00._OJ73N3
MC?!%7B5\'<\JJ/!%9,*7062=$53X D7S0=$"*+1V833"%WF5\'6\,"0JCV-;
M9G<;;:J./[BG@@I?H&C^@91(;IF@PM=D[[6V\KU(3MUCG!8HH0\<7GMG\P'E
MVU<-MP<L6U=ONGW)&,M6U<<E#1<T+PWX^8<L8S\.RI?G=B]\GO\'4$L#!!0
M   (   QHEKV8*!W5@@  .LD   8    >&PO=V]R:W-H965T<R]S:&5E=#8N
M>&ULK5IM;^,X#OXK0FYQV 6F$^O%<=)K"_3UML#.M&BGMY]51VETXUA92^G+
M_OJC[,1*+%EM</W2Q@[%/*1(/J3LHQ=5_=1S(0QZ712E/A[,C5D>#H<ZGXL%
MUU_54I3PS4Q5"V[@LGH:ZF4E^+1>M"B&)$E&PP67Y>#DJ+YW6YT<J94I9"EN
M*Z17BP6OWLY$H5Z.!WBPN7$GG^;&WAB>'"WYD[@7YF%Y6\'5L-4RE0M1:JE*
M5(G9\> 4'YZSU"ZH)?XCQ8O>^HRL*8]*_;07U]/C06(1B4+DQJK@\.]9G(NB
ML)H QU]KI8/V-^W"[<\;[5>U\6#,(]?B7!5_RJF9'P_& S05,[XJS)UZ^5VL
M#:H!YJK0]5_TLI9-!BA?::,6Z\6 8"'+YC]_73MB:P'H"2\@ZP6DNX#U+*#K
M!;0VM$%6FW7!#3\YJM0+JJPT:+,?:M_4J\$:6=IMO#<5?"MAG3DYO_E^?_/'
M]<7IC\L+=/\#_GV[_/[C'MU<H?/3^]_1U1\W?]ZC7Q^^GSY<7(/,;^@ /=Q?
MH%]_^0W]@F2)?LS52O-RJH^&!O!8K<-\_=MGS6^3GM^FZ)LJS5RCRW(JIKOK
MAV!':PS9&'-&H@J_\>HKHO@+(@E) WC./[Z<1>#0UK>TUD?[?,OU'%U!HF@T
MJ]0"W2Q%Q8TLG]"I#5YII AZK='*PEIM7A_J)<_%\0 25XOJ60Q._OD//$K^
M%3+YDY3M.("U#F Q[2??H0S),E<+$3*S63NJU]IJ\WQ"1N,4'PV?M_$'I#**
MLU9J!UC: DNC.W,Z_2^D%E0CHY%14(YR5>:R$*AL$=O[]BJWF[BLU+.$&$6/
M;TBUN\C;73P,V9=^YC9^DK(=;XU:;XVBVWAKK:_K-M &RBLQE0852NMP^#;*
MTJT=.YB0SJ[Z,IBRGDW-6IA9%.:%F(D*P+4;R%^%1E":T*JT._Q4RK]WOD6/
MHA0S:8)69+X5))VPCAT!*9:-1V%#QJTAXWC:J/*@#COQUTJ:-P1X@;4UM[P7
M@CKV0#"\A:%!Z@O1="O9=H!.6J"3=SP.T99+WA R.)HO5&7DW[U()_ZVLVR2
M=J &I.AXE(:QXL0Q71)%^V]H:A  G4+?H(TTJTH@-4,</:XTB.HP@R4>F*0#
M-R!R@#/<AW>+F7$4[XV9BVJ[W+BB]<66IB!<'/ P[3HX(,5Z8A83!Y?$V6[.
MRR=(..MDAQF*A&F2L)#\419UN:SA6]^#A4C,9M#2Z7HK<@AX+6WTA$OJ&L(G
MU=3/TK;K,-<=X"CWUNP(O&,JX)$>1P5]0/UPHVR$O; ,R)%)W=D$-]J1.HZS
M^OD&,^2^D,_\L>@!RCP !*J\A],7 Q?WH70,CZ.4"*0EEEQ.D7BUM7--!*I.
MJ<;70<AI()4I[E;]H-@6Q^U"=C2+XSSK^L-"P&022YX@^ #Q @]TJ3<@EA+:
M@]UQ+XZ3[VF>JY5MIY;\S49$$&" +6DVRCSW!N1PBO&D!Z3C51PG5@!9K: %
MT+S@E5S'1*P)P#YK'M"$C;R"&I##69;U<8 C6!QGV!;QZG%3*E2U'<M3"5EH
MZXCNL< G4Y*,/(_[4I0F/4%!'..2..-NT =R,%]!JU::]XH=\;EUW"T@ 9D#
M.AF/>] [_B5Q_KUVC:*K=+4)D1@G/K5"=G7C)2"%,>T+%^(XF$0I:]TRO.=3
M$FA:DTD78D"*TKZ0<*1'WB>]>BY^T'4O_N&AF(1H#V*T&\HA.9PD24^K2QSM
M$;;7-']=UFWD^\"C;+IOS_)9VG:=X%B5O,.J_*V9FNTDN%Q5^=P2%;1N,"'#
M1L*P8O/#SBU+*U=?Y7PI#2_JX4NKF7GA53AU JQ*6=KEKY!82DA/_TH<^Y)W
MI]Q<B.EZ=_<:$HA/J5Z1"DR\O3,"<;1+XK3KI=.'HS+$Q0%GA\2 BGMP.R8F
MX[V2Z4J6O,P_ #M*\'LGTR=IVW6"(W?R#KE/G\%HL7:!/>ZV#EBG"YKQ/%;$
M?<9.,6'4B[L LZ?I..LY:Z&.VVF<V]M* !/U?M!I@*\9(2SI'EF$!"G&8]S#
M0M11.XU3^VZN-QV)GJO*'!A1+="CJD E6!3&[Y,WR;RN)"0%DWA/F:*.XFF<
MXN]@K-EX?K8W] "I3W#6S?J0&*&3-.D!OW4@'F?_.]M'+>O1'Q+*5#(W4+;:
M(7BVZGF.0'U2]_SMBV RZBE4U+$^C0^[ZS#?'[$_U7J(?1'H:"9]D!U'TSA'
M7TA[5@VXD!V @^ "%$I&Q ,8%*-](>R8EL:9UI+6<KN1T$;E/Y'4>M740]LU
MZ#FT">#S39,1]G)@Y*43RKR #LDE4 A[3''\2^/\VS3<LPU[]<[F-,"C(^85
MO(!4BOO\[<B6OG.>O&D2;K<>8WR4<6GH='G[%&D-W1<;C_O&!>HHDL8I\K(^
M'+39=_F:UP>,Z(X;@3:'C4 ^UK(OC7V7T'<^\Z(Y(;5!=.=2U@H$[?,),J-9
MUSI?R![QAJUCCD-9G$/KC6FLDO^W(<QGRY1DW<DS('7 QGV5G3E&97%&W0/\
M%W0FGF19VMB#C;T5E53!,L4"4_)XC+N;$Q";,-9S6,0<T;(XT>YET:4]V(C:
MXE,J=#S><[& &$LG?;8XWF7Q)]'WJ^6R$+;@0G=V(75>*+V>;-I.'$:'YJV0
MGF<W[%,?2W^6MEV';#V8CM/Z=0G=$FQBT%"?EUG*N@4O()5EK"^/''FS.'E?
M;SV[#()+O>?A./&>H(6DL%>-AUNOC2Q$]52_3:-1?9#;O'31WFW>V#G#A^?U
MBRV=^Z?X\+1^?V7HU#2O 7WC%:2Z1H68@<KD:P; JN;-FN;"J&7]<LJC,D8M
MZH]SP:>BL@+P_4PIL[FP/]"^WW3R/U!+ P04    "   ,:):%7&\X4L"  "A
M!0  &    'AL+W=O<FMS:&5E=',O<VAE970W+GAM;*U4;6_:,!#^*U963:VT
MX;P!%4LB%=C42NN$RKI]-LE!K"9V9CND_?>SG9#1*J!IVA?B.]_SW#V'[Z*&
MBR>9 RCT7!9,QDZN5#7#6*8YE$2.> 5,WVRY*(G2IMAA60D@F065!?9==X)+
M0IF31-:W$DG$:U50!BN!9%V61+S,H>!-['C.P?% =[DR#IQ$%=G!&M1CM1+:
MPCU+1DM@DG*&!&QCY\:;+4(3;P-^4&CDT1D9)1O.GXQQE\6.:PJ" E)E&(C^
M[&$!16&(=!F_.DZG3VF Q^<#^Q>K76O9$ D+7ORDF<ICY]I!&6Q)7:@'WMQ"
MIV=L^%)>2/N+FC9V/'906DO%RPZL*R@I:[_DN>O#$< [!? [@/\6$)X !!T@
ML$+;RJRL)5$DB01OD##1FLT<;&\L6JNAS/R+:R7T+=4XE:S("]I+M )A7P1+
M 2VI3 LN:P'H(WI<+]'EQ16Z0)2A[SFO)6&9C+#2N0T#3KL\\S:/?R)/@.XY
M4[E$GUD&V6L\UC7WA?N'PN?^6<)[(D8H\#X@W_7' _4L_AX>GBDGZ/L86+[@
M7_HXU*Z6+ARF,[,[DQ5)(7;T<$H0>W"2]^^\B?MI2.M_(GNE/.R5A^?8DV]Z
MU=RQE)> +K]R*:^&U+84$TMA%LL^\2?78R_"^V,9 U'3P)OV46U]^.BUER!V
M=@E(E/*:J?;]]-YVS\SUGK'S^,:O]\^-'3O\AZ9=7OIU["B3J("MIG1'4SV]
MHET(K:%X96=JPY6>4'O,]0X%80+T_99S=3!,@GXK)[\!4$L#!!0    (   Q
MHEH3K8?K1 (  (H&   8    >&PO=V]R:W-H965T<R]S:&5E=#@N>&ULG95=
M;YLP%$#_BL6D/;6%0#ZV#)"2;M/RT"E*N^W9P1>P:FQFF]#^^]F&L&Q*J)27
M8)M[C\]UY$O<"OFL2@"-7BK&5>*56M=+WU=9"156=Z(&;M[D0E98FZDL?%5+
MP,0E5<P/@V#N5YAR+XW=VE:FL6@THQRV$JFFJK!\70,3;>)-O./"CA:EM@M^
M&M>X@$?0/^JM-#-_H!!: 5=4<"0A3[S59+E>V'@7\)-"JT[&R%:R%^+93C8D
M\0(K! PR;0G8/ YP#XQ9D-'XW3.]84N;>#H^TK^ZVDTM>ZS@7K!?E.@R\3YX
MB$".&Z9WHOT&?3TSR\L$4^X7M5UL]-%#6:.TJ/ID8U!1WCWQ2W\.)PF&<SXA
M[!-"Y]UMY"P_8XW36(H621MM:';@2G791HYR^Z<\:FG>4I.GTXTY7@(2/4E,
M*"_02DK,"S#'KE7L:[.#C?.SGK;N:.$%6H0>!->E0E\X ?)OOF_,!KWPJ+<.
M1X$/6-ZA:'*#PB"<C?"BH=S(\:(+O'-EWJ#]*]IP0@^4-)B=J[J#3L]#[;U9
MJAIGD'CF8BB0!_#2]^\F\^#3B/)T4)Z.T=-=PP!-@OWL=G*JC59$U/K_0^YT
MQX$Y9@I&Q&:#V&R4\UWPVRODQJ%OR<T'N?E5I_8$TMPB?,%MG/F6VV)P6UQ]
M<.-^X]R+?OY)?ZA %JX+*I2)ANNN50RK0Z-==?WE;WC7I<V%+"A7B$%N4H.[
MA?D[9=?YNHD6M>LV>Z%-[W+#TGPL0-H \SX70A\G=H/A\Y/^ 5!+ P04
M"   ,:):(+D4_$(+  !Y'P  &    'AL+W=O<FMS:&5E=',O<VAE970Y+GAM
M;,59:6\<N1']*\3L9B$#H]'I(]8!2+:\$19K:W4D"()\X'1S9KCN)GO);HUF
M?WU>%<D^1B-9!A+DBZWN(8MUO'I5Q3Y>6O?5+Y2JQ4-9&'\R6M1U]7YGQV<+
M54H_L94R^&5F72EK/+KYCJ^<DCEO*HN=_=W=-SNEU&9T>LSOKMSIL6WJ0AMU
MY81ORE*ZU;DJ[/)DM#=*+Z[U?%'3BYW3XTK.U8VJ[ZHKAZ>=5DJN2V6\MD8X
M-3L9G>V]/S^D];S@[UHM?>]O099,K?U*#Y?YR6B7%%*%RFJ2(/'?O?J@BH($
M08T_HLQ1>R1M[/^=I']BVV'+5'KUP1;_T'F].!F]&XE<S613U-=V^3<5[7E-
M\C);>/Y7+./:W9'(&E_;,FZ&!J4VX7_Y$/WPD@W[<<,^ZQT.8BT_REJ>'CN[
M%(Y60QK]P:;R;BBG#07EIG;X56-??7HNO?;"SL254UZ96I*OCG=JB*8%.UD4
M<Q[$[#\AYD#\:DV]\.+"Y"H?[M^!2JU>^TFO\_UG!?XJW40<[(W%_N[^ZV?D
M';1V'K"\@R?D?7%S:?2?;-Y8?+#&VT+G,B##Y /SR1V?M)$FT[(0-WBI ,/:
MBW^=37WM *1_;_)04.!PLP*47.]])3-U,JKH+'>O1J<__;#W9O?H&?,.6_,.
MGY/^\C ^+^;SE]L+L2=^^N'=_M[>D3@_N[F\$5\^B:OKBYN+S[=GMY=?/HN-
M9XG;A4**9;:LI%EI,Q=9ZV.5BUGK3M^Y4SI%8BX_?!*7IE;.L"19C/&83<06
MJ;&_>X3?+_G/O:-7'"N-O973D%>1P&;J=:[!*&,61;%%2I(*/SO;5&O2NI_'
M42C+K.U<U0OED'[U@N1<C@6>1;N+[4IJC'G/0MXK,57*0!M5P1JH9M@)+H>U
M*LBZ,YH\P##RK1IWDYM):]1<&>5D4:QHLZIH.4EI#%L132W6=HN?S\ZNDHA)
MWVQ$1XKEPI) NS20UODH.OQRPO^&I5B9AXBQD4%M8P68WW%($&TGI/<*CK?L
MI7HA#<=!FWOE:XHGV4X>@Y02> !S95_IM$ZQB3@KBBB@U4@KQA+MC$YF7 S4
MGZX&4A@L25GDH_$R"VI25*:R(.?[7GA4H4&=!,0)XQ3;2Y]".U,Y.3^! 98.
M?Q!S>P]LDHEI#0H'^<"RUAR+QVL#1*(H!CV_*&RVZ:RU!<^=R>>%]5L 1M%P
M[&"2T[4E=[[:*,>/16. H1C!I?8*$<MU%MQR8V?UDAP?PCQ& '2V$$N%5T#W
MO;:-1SS"@0@)800!C^I?.<)*O>*3U1^-KH(+C*K[2197?V$$A(/BS^->M)S*
M"ORH9YKR -L&3-*@P+BA) T.,G,]+3KM<7!*+W%K20+U+RED6>,<(7:EI&.N
M>WM$C-*QV5C\*/8F;U!PBR)5B!_%_M[D77J%\#)N/ZI,E5,H$6O5X9.6S)PM
M_VO^(DM>X(-QAQY?*6Z BM6$B#L%U!-Q$98V,+2@\H L5UVR?%1P$U:U=5.6
MUM6QKFY0_:SW,[GKD9II3^<T)/94F_5(O^3@B;CS7%$N?*U+IEO*]D#.K0K?
MKDO:),#H.K)A2[CP),(%=Z(),^A:V4\(1BF_*J':<UE#CTZW"L0$OJR%G,T0
M T8@5(+ZBLUHZ$PH%@F6DU?+J2YTC6P.//+4'@12F28PAWI I^Z5GXA?U*JG
M2\Q9R+!>14T<B2O8!5#^'C0L*2;D&YVKY"SV S<\/K@A-*3*0:O,>KRM+5>-
M0C&"'E2^C6J5J6[?6$RM:8)5-B(U@\^ 1-X)C6/&Q:;("SA>U/(!:#!JIJ-'
M[F71Q. 7&"0"P^,I)UJDRDL[$O+1%%/7'WRX"G[*E+XG&_%S3Q8D-U[-F@(N
MOP^52&8<8)*8D$H]Q^/\TBA VC$ L&UN;;X$-T3R-?-MDIBWJR.140530!R%
MZ2RK&R /AJ.R>8X?^!N6<<7K5\12KD2N9U0!F$8Z[+7TU<8[UD==BNLHF)*@
M,1*%@N+]$OQ'DN>*CA;AMT8"> YT<<T8),?33"3V=K=_V]0&58WSC0R9P=!M
MBI@43LV;(C45H>S?*/ Q8YU77#QD:"[F;'RI/4]_6[U6[.;B0]?UP#3_E'AX
M$PDL/ ";CM(FC+$I]C-K:V.!W5S[K+"^H<0VM*3H%SOJZHRA6&WRU_CY]B\Q
MQYB<,>74R"E/<RK_%AIR_;TTFX)J*VTX.>KO#"$A36I.%B'SWYO0HODN^PGH
MT5)*#A1$ZB+0(\$%5#J07I[:14I&*68 ^J! )H<F[.*QURVR:UNU*NMU?T\"
M-><Y!R7 E=!O\[80IV8M+0_TY],YT#8=/CP.7I$4"(O:U:WU:LZ9&D!"DNAM
M@]Y\(KX\DIA4JQ=.J>V21MNHGE TX J,I^B.TGS*4JGXLVL!J-:!FF'$718Q
MWIK7.!J4VX %97_&\8QG@Y0*[E 2RK\G_GYAFR(GN713$RO:[XT)5R$,3#KC
MY0);K9 H,N@57?&H VH+%F46&8D>$M ?LDH;UQ;K9R'#'C/,+Q.\I)H!PFR'
M(G10!G]G4;UO+OB,H/Q3845N>;["3$B\<"L?H"*2K[4"%AR$?.NN 'IB,<:9
M7#K ]-SBOP$S?3J[.6]G.C!7@W,V;KVK<F[?4Y-T<]=NH^.W=_\Z'BCX7ER6
ME4,K'Y/8]GX5'WO4U9.8)'4C:^CHV_YE#F0@\8CZY!P/\UZ3QL*IHKJNFXE-
M!VH>ER>JX74H8]UA@KI,M+L9\V=[%+%06D_:1[8%T3 /)W*=TL7"N*\0')A#
M%92V+/*U4WK.A6:;U(N: IL0YT-M#$6V(8^O41*%:BB\9VGLGDA6;#S(RCC7
MC4,JC =*4/L"DC&INDO(F:+Z./8:L:H%? H=^YO&DTI3&ZB$X JV]VN$%":3
M;)7</:9X\,UBZUI!$]N<)SV:09:**)[D!*:YUWEH*N+I=!_ '7Q+_8@*%B ,
M,#6!@.?YUW\)98%8S].E )O8U*$?*6G\KHI5N))0W^?^V,_(JBH #NJBTL1,
MO@*&\ER'RY]B%;)/ NMYO"<JO$U@ZE7J(515A.8PP-\(X>]H/#S8.6+D26\.
MU]%,'9W%1<+66/)(DV%B<&M(-,\S -6"Q*CKY7"-8<F1ZQ3[>APH'$OHSH@H
MC5(W-#QMX>QY,-88&<F/L@XQM&DFI @BHKT7G(K#^JM]5Z, 'I;%"A,S:9\Z
MNK[1WV,2Q67<52;U0!=AD9!DBXZ-'1LHPW+?5D<- X"26Z LMZAL!&S)N+J$
MJZIOE+U)(MKV$IC+U?[1=9NQY!ZG%O29 F>$Y7'11:24CT.&[1,V*L]GXO58
M>0YCY4$A:0M(\.?A]N[!^W5)=)>WII^(ASZJ!23@R5K0<_#C<I IQ[UDF/B&
MDV9/^#/<7S53I/W&$I NDCKR#!UZY(!VT-V2KVBJP&C@PYA&%X^FMG3KNS5]
M)12&4+M2ZT/E5O8*(V)W=8 W^:M'P]S@,B$PQ)9:WX@GC+GM@OX69MNYT7_R
MO(?L=SP26EUL\]JY])B+;=YDA!C^$!4< <.5Y$ 4ZI[FI52%,AFPVZ.D%(;D
ME);/94$]7NOR/,X9R</I(B5=>K4#R3!Z?9+UST9,"BH@N@XM;:Y\YG35;_"Y
M,'8]/U_I1J6U>=+6GD64R>EBJEBM47JJY$$D/^8HUV8P8[#B76_IX4-R_6;@
MOIR;L>/M@,WBU<!@?HF(CNO?]=?_GW@[AAYGJGCW03?&-'I%.IP-&;.C\0"-
M_SDS"[JY<,2]WTO0F[Z=[?0^AY;*S?FC+\W$P$OX,MJ^;;\KGX7/J=WR\%$:
M<]Y< YJ%FF'K[N3MZY%PX4-O>*AMQ1]7T=?5MN0_%\A&Y6@!?B>OI <ZH/W:
M?OH?4$L#!!0    (   QHEKX<!4 1 ,  'P'   9    >&PO=V]R:W-H965T
M<R]S:&5E=#$P+GAM;)U576_;-A1]SZ^X4(MB P3+^G#LQ!^ XWIM'KH&CK<]
M#'N@I6N+*$6J)!77_WZ7E*VD:6*L>Y'X<<_A.>3EY62O]!=3(EKX5@EIID%I
M;7T=128OL6*FIVJ4-+-5NF*6NGH7F5HC*SRH$E'2[U]&%>,RF$W\V)V>351C
M!9=XI\$T5<7TX0:%VD^#.#@-K/BNM&X@FDUJML-[M'_4=YIZ4<=2\ JEX4J"
MQNTTF,?7-YF+]P%_<MR;)VUP3C9*?7&=VV(:])T@%)A;Q\#H]X +%,(1D8RO
M1\Z@6](!G[9/[+]Y[^1EPPPNE/B+%[:<!J, "MRR1MB5VG_$HY^!X\N5,/X+
M^S8V'0:0-\:JZ@@F!167[9]].^[#$\"H_PH@.0(2K[M=R*M\SRR;3;3:@W;1
MQ.8:WJI'DS@NW:'<6TVSG'!VMD)C-<\M%K!@IIQ$EDC=5)0?"6Y:@N05@A0^
M*6E+ TM98/$]/B(QG:+DI.@F.4OXB>D>I'$(23\9G.%+.X>IYTM?X7.V@,G6
M'RR_-OR!"936P-_S#9FGO/CG)=LM:_8RJ[LKUZ9F.4X#N@P&]0,&LW=OXLO^
M^(SFK-.<G6/_+Z=RGN#WS^LE)/#NS2B)XS&LEO?KU>UBO7P/B_G]1UB7"%LE
MZ$9RN0/+-@*AUNJ!%VB T67+E<RYX,S?'+6%G%2$_@OXN(.AWU?]*-8',.,0
M=(QYV9VC#Z1&!E;]%)DIU5X"EV!),JDR2O""N6ECZ5?Y@SP*A"T9,F1,^VA;
M:D2HVNQ$EYVOB;J^>#;Q73>[Z%+HN69X"X-P&(_HGX:7H_1B]4Q^/ K38097
M\>7%6EDF?G8O_X?]MY!D8?\JH486#JZNX+DFC3YC'9(;.G9.U9B+ XT+STPG
MY%9;J*IF\N!3:#AV.XAZ=R M.4&IDL*F,91UQE#%LB74S4;P'!I+:6,/D ON
M5W"F""*: G\PM]6J\DNQG/;!\%.RS>N:T 55%+_B!ZV:.H1;F??@%R<GZ8_G
MRP^^%8]_[;UTWZ(G%;$B%E_W#>U@(VU;'+O1[FF9MQ7U,;Q]ER@7=EP:$+@E
M:+\W' 2@VUK?=JRJ?7W=*$O5VC=+>AY1NP":WRIE3QVW0/?@SOX%4$L#!!0
M   (   QHEILFT;H%@8  (P4   9    >&PO=V]R:W-H965T<R]S:&5E=#$Q
M+GAM;,U876_;-A1]SZ^X<(LB 03;DFS9SA?@>.G6H6F#).T>ACW0$FT1I427
MI.-ZOW[W4K*C.):=;-W6%YN2> _/_3J4>+I0^HM).;?P+9.Y.6NDULZ.6RT3
MISQCIJEF/,<G$Z4S9O%23UMFICE+G%$F6T&[';4R)O+&^:F[=ZW/3]7<2I'S
M:PUFGF5,+R^X5(NSAM]8W;@1T]32C=;YZ8Q-^2VWGV;7&J]::Y1$9#PW0N6@
M^>2L,?2/+SHTWTWX+/C"5,9 GHR5^D(7[Y*S1IL(<<EC2P@,_^[YB$M)0$CC
M:XG96"])AM7Q"OVM\QU]&3/#1TK^)A*;GC7Z#4CXA,VEO5&+7WCI3Y?P8B6-
M^X5%,3>(&A#/C559:8P,,I$7_^Q;&8>*0;]=8Q"4!H'C72SD6/[$+#L_U6H!
MFF8C&@V<J\X:R8F<DG)K-3X5:&?/1RJW&D,#-SSFXIZ-)3<>?.#VM&41GB:U
MXA+JHH *:J!"N$*PU,!EGO#DL7T+::VY!2MN%\%.P"NFFQ#Z'@3MH+L#+US[
M&CJ\L :OXB+\/AP;Y_@?VQPM<#K;<:A/CLV,Q?RL@8U@N+[GC?,WK_RH?;*#
M96?-LK,+_649V0WUX>/=)83PYE4_\/T3&'W\<'<S'-W!S>7H\MWGX<7[RUM$
MOKR#]9JZNF:.FA K[#]C>0)J C;E,%$2&UGDT^,#S$^<KA,$/Z%M-N9Z=:=S
M<"&D1$N6)S#&(<'":P@Z@1=U QI%H1?AO"%!LCPF= W\VPQ;%NUBS1-A02IC
M,&.'$'F=@0]';M1KX^B@GC>"AY'G1SZ-NI$W"$*X0_HCE<U8O@34!6D@YMJB
M<#EVM. 6.! D';'2B2.X$#8%80U<,8R*KB8)KN<8#U0(&$XUYZA<MIA^]>GM
MSW#!\B\>O+=)$PXI(4'[A.Z[H7]RU'3LUL$%88 1#97'0@KF% PSL(NH43(!
MJXKE;,IP=:XY<"FF@B)/:2!/YCD%ER+-T(B1Z1P[5L.P>$C+WUJ<S71B,&")
MF(BX8+!B/KP=K8A#/VI[&*18SA.R?#9#HH/J)8M<3[3*2KWCV@"N->8IDQ-R
MVDU/YIK@J01MBN&%K! ;3F(#&Z5(V%2!GAN1S9A)E[\],<R5K2>%X2(V=4NA
M%%#AXB8CE\<'0S>9GE*DB<*=HUW5R,T.>G2)[<.G(L]=4 OVWO[HTH+DQ))7
M'3GTCUP?>(,HHH'OA>U@U9[U8)68S[@6"H&"(_ #[-I^%_PP],)!'YM0EGNL
MV8S8=H!#\/V^U^D%KI?]8.#U@PYV,\;DNS@;DK,81;\W<'+C]7N1"P&UV'@S
MJ 9QG8QCN^Y:\:&C</:]4',CEP\TL'^P6:>Y^!/MQTOG\DIKQG,+*2NHCCG/
M]U78KRR?XPL2;)88/*ZQI@OFV[*Z7M(457)$6]-L4DV13U!_'(G7T&T&^,8A
MI7MY0EN,:3-:WWG,A13 R6+,3 H%B/,-WQXU<Y+BWK^$%;Q\0B1(??:T9-/E
MDS+''Y7'R]/VK^2J)L9/4O4L=7?!B^O;:8]X;=;E/]H+;D>;RKZ+V!.YQO]-
M.KNH$Q_-,V%MD=MMP5BY\_UV@NH25 J8>\I[0817MJK_7_AKJ)+R/:%;JCVJ
M<S@HU+XWB%XNTRN1+@7ZX*:2GRVYV!#XP!OTVJ7 =U&!!UL$_D5..54/^EZ_
M4[S3>3T</$O5-Y;96[N4M_]H)Z@IM1]F!^@^V0$&WW<'>&CP?>JV(>2[BJ5^
MSV!H7B@:?9>@9#)M:>'5>VT<ZSD^H4^0W)2ZI)"GQH+1FHH)Y1I9.B_*5V"J
MH$H\W==6[\2X3R<E1<)<;9>JX[[43;$?L"E^)TSQ,0BTC.WJ$^L9NV+=F@_!
MKJ1A@8Z^!K_=[&UDLU?)[^1O5-'C6AS:;3.??!46Q<<RVGM(>OBZ]HG"1J]6
MW_#66=[7G\7F1^62B,+\ZYQ),5G6;')(P#)"PR ]J?A>;<6[))H'5WZ4VMIV
M!M&JG!"AZDW=.1C!(//BL&A]=WW4-BQ.F!ZF%^=TF&/46@.23] 4BZK; %V<
M?1475LW<>=-86918-TPYPWC3!'P^4<JN+FB!]0'D^5]02P,$%     @  #&B
M6L@SAG], P  8P<  !D   !X;"]W;W)K<VAE971S+W-H965T,3(N>&ULE551
M;]LV$'[WKSBH0;$":B12DBTYM@$G2[ "Z1HT:?LP[(&6*8NH1*HD53?_?D?)
MUN+-%= 7B>3=]_&[(^^XV"O]U92<6_A15](LO=+:9AX$)B]YS<RE:KA$2Z%T
MS2Q.]2XPC>9LVX'J*J!A. UJ)J2W6G1K#WJU4*VMA.0/&DQ;UTP_7_-*[9<>
M\8X+'\6NM&XA6"T:MN./W'YJ'C3.@H%E*VHNC5 2-"^6WIK,KV/GWSE\%GQO
M7HS!1;)1ZJN;O-LNO= )XA7/K6-@^/O.;WA5.2*4\>W Z0U;.N#+\9']KHL=
M8]DPPV]4]45L;;GT4@^VO&!M93^J_1_\$$_B^')5F>X+^]Z7H'/>&JOJ Q@5
MU$+V?_;CD(<7@#3\"8 > +33W6_4J?R=6;9::+4'[;R1S0VZ4#LTBA/2'<JC
MU6@5B+.K>XXAF45@D<NM!/D!=]WCZ$]P$;Q7TI8&;N66;T_Q 6H8A-"CD&LZ
M2OB>Z4N(B \TI,D(7S0$%G5\T6A@\-=Z8ZS&L__[7(P]17R>PM7#W#0LYTL/
M+[SA^COW5J]?D6EX-2(P'@3&8^PCF1_%G5?UYX>G6XCA]:N4$G(%][?KQ]M'
M6%O M.;ED%?PP98<;E3=,/D,)=L"EK=F5L@=,+F%0D@F<PY5GSTL>BA8+BIA
M!4Z=!__6B@:KTN)%M276I:M\![=<UP8TDSLW*[2J@8!50&)XYDP;N(2[UK::
MNVLLZK;N-X&&/3LZ RW>) U2R;>YTU!5;%/Q<7W,@"K^&^.>XQ[,B:^PY9CY
MY,- <=?#)R>(*5P 37P2QSB(_# FI_89T,@G27IJ"SM;"F3F)X2<LV48NI]%
M,5 _F\Y..*,02.13&J*-TGCR5*)F5F *@2 HG='^*.G5Y$E95D$QFCD:IGX:
M=?M%))[<<V/F\$XB'3<6?H-HZF<D@S<X)'Z83N'-@;;GJ03;'(_X @,B?H;*
M+GJ)Z>3^?TYOL3-I[>X .F7^+*,NA?XT2LXZ=T=Z )"$^L2E+?23+/H%&7"N
MY((7C:_F>M>U=P.Y:J7M>^"P.KP@Z[YQ_NO>/S]X/'AQ#6HI$!I>SA(/=-_2
M^XE53==&-\IB4^Z&);Z"7#L'M!=*V>/$;3"\JZM_ %!+ P04    "   ,:):
MY(?GNHX$   C"P  &0   'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6RE5EMO
MVD@4?N=7'+ELU4@$;&,@R@4I"8E:J6FC--U]6.W#8!]@U/&,.S.&L+]^SXR-
M(2FP6NT+S.5\W[G.\;E<*?W#+! MO.1"FJM@86UQWNN9=($Y,UU5H*2;F=(Y
ML[35\YXI-++,@W+1B\-PV,L9E\'XTI\]ZO&E*JW@$A\UF#+/F5[?H%"KJR *
M-@=/?+ZP[J WOBS8'+^A_5X\:MKU&I:,YR@-5Q(TSJZ"Z^C\)G'R7N!WCBNS
MLP;GR52I'V[S*;L*0F<0"DRM8V#TM\1;%,(1D1D_:\Z@4>F N^L-^[WWG7R9
M,H.W2OS!,[NX"LX"R'#&2F&?U.HCUOX,'%^JA/&_L*IDXU$ :6FLRFLP69!S
M6?VSESH..X"S\  @K@&QM[M2Y*V<,,O&EUJM0#MI8G,+[ZI'DW%<NJ1\LYIN
M.>'L>()3>]FSQ.3VO;1&W52H^ "J#P]*VH6!.YEA]AK?(PL:,^*-&3?Q4<('
MIKO0CSH0A_'@"%^_<:OO^?I'W(()-ZE0IM0(?UY/C=54 G_M<[;B2O9SN6=Q
M;@J6XE5 =6]0+S$8OW\7#<.+(Y8FC:7),?:#"3B*VF_3EZ_/=S" ]^_.XBBZ
M@,G=S3-<6Z#8IHLFN,!D!A-,,9^BWIPF':IDBEBJZ+49BQFHV7GK#? 74.MZ
MB9I>+GPMK;'$R^4<]IRUGE'G\%DQ"6T"AIUX$&Y7K0D*ML;L=*+9"K:BT2#I
MA&%(_\/.B,2><*G$TJFXU9AQ2Q>A%QB,.G$\:#TKRP1,D1H55MYP8THF4R2W
MC#4PZ([@-QB$B=<_[ YIET2)!W^7+%?:\K_)]7W8#Q!WXG ()WZ5G,5P4BML
M$V/<"9.$5DD4=49)_]\#=UMJC=)"X712;U(S$$K.3ZWSWNMO5VF,+[:KUN?7
M(J<@E3Q-:ZJ-%1L;#EH'U\;I>VUC!^P"X5;E!9-K6+#,R2=GW81ZCA"UB:4L
M#<5GJC35N$M$RJ@$N5W334;N.8HV#,.P&S8PW63-E;!C2:OL51"VV;*Y1LR=
M(RMN%W0^UZHL?&#025(*'+T+11Q>U!5P3]H%Z?>GT<5)%YY)YK"9W "7J2@-
M?0@<M=JI6X'6.C5;"ZV+H+MJ0T3%LO&H4L+J,N>24&@L:&:)4V[5FIVHO+$7
M5FQ3CE2M7L(NR'_(JZ[J/,[VO=NJ:!O,"L7R#6C/RR;S"O0?/['NPJ?= #@6
M3CE/K=O-A&*6NQI3IS/^0FROO3,K5E >##9Y^*+H>+3M.*CYDCE-I(;Z;>D2
M:KSE'S&;^_;@#.&6H]DDK2J]_?&LXA3]YS@-NOW_&Z?[TKH/AYN"LE(00F/!
MUI5#%"O_ @M-Y<0+>F>,1,G6F1(TY9CSUN-&-"L1INN=MG:@V_W2W?S[?=U)
MAONZPMY.\0HV:@0._)/X&H:U[(<'1HY3D9XTK7K;B>N&6[70IL5L6_I&LMW(
MMIN&N^];V=L97'+4<S^>&>JYI;35#-.<-A/@=37X;,6K\9%<I@(S](YG! V[
MHT$ NAK)JHU5A1^#ILK24.67"YIB43L!NI\I*N9ZXQ0T<_'X'U!+ P04
M"   ,:):ZJEOLQ0'  "5$   &0   'AL+W=O<FMS:&5E=',O<VAE970Q-"YX
M;6R]6$EO&SD6ONM7$.ITD !EJ3:52MX QW8G 2:VX:7[,)@#545)1*J*:I)E
M6?/KYWND]KC=.0SZ8I'%MWYO(WVZ4/J[F0EAV4M=->:L.[-V?MSOFV(F:FYZ
M:BX:G$R4KKG%5D_[9JX%+QU37?7C,,SZ-9=-]_S4?;O3YZ>JM95LQ)UFIJUK
MKI>?1*469]VHN_YP+Z<S2Q_ZYZ=S/A4/PC[-[S1V_8V44M:B,5(U3(O)6?<B
M.OZ4$KTC^%V*A=E9,_)DK-1WVGPMS[HA&20J45B2P/'S+"Y%59$@F/'G2F9W
MHY(8=]=KZ;\YW^'+F!MQJ:H_9&EG9]V\RTHQX6UE[]7BBUCY,R!YA:J,^\L6
MGC8==EG1&JOJ%3,LJ&7C?_G+"H<=ACS\"X9XQ1 [N[TB9^45M_S\5*L%TT0-
M:;1PKCIN&"<;"LJ#U3B5X+/G]^)9-*U@]Z)0TT824J=]"\%TW"]60CYY(?%?
M"$G8-]78F6'732G*??X^#-I8%:^M^A2_*? ;USV61 &+PWCPAKQDXV7BY"5_
MX^5$JYI=PE:-; #2=L8N'<9"LW]?C(W[_I_7 /#RT]?E4^4<FSDOQ%D7I6&$
M?A;=\_>_1%EX\H;UZ<;Z]"WI/QNCMX7<W#Y>LXR]_R6/H^B$W5__?GWS=(W?
MR]O/-U\?O][>L"MI^'2JQ92[@E$3MM;\.!. K9[S9LG*+94PJ,L=9(M*BL8:
M)ANK6('SJ=(21';&+4IE+@'Z#+Y;B&NX;;4(&*]5VUC\-B5KFT)HBTYBEZ1]
M+9N."FYF;((68AC7^#29H*Q%R<9+!E0:5<O"T8U; \>-81-$4FG3@^W*B%UK
MB-];BD+2WP64K[9V.1?>DF*=([5\Z74>9UJ(O1QGR-!B1BG:H12E/$T[5ZJJ
MN#;L3NB"Q!WL.Y=>RS>GU!QWKANAI\N B>99:M6@U<$4V4PT1R*VQ0H?6$.0
M&XL<U?#U6>@E>\?B) \&PY"E(_8K;>,TR$8Q2P?LU\X7P2ND-K$:54A>L;E6
M4\UKPZ)L%(1QPA+0L6@4!CF8$LCH/(BBU1+($YM"B#0KY+.L)&_8>U[/3P!*
MC4)Q\O(P(+>C#%*&>9 /8K?N/"J+TW<LS8=!%N4L"D-G7CI*@S3)_/[_C.<C
MHG;<>>H]]-A$E$+#@"FAY !U2(V"+-XB-4R#:#1@ T+*<1F+Y'!N5ZK8YQYF
M09ZM_<R"T2#Q?GYM$([&U<D^0SP,PB&$@SX>!'&6T'(%R^<M69(FP2 +V9#@
M22 YC2(H .GE%N0H38-PD+.$B*(H=Y#'Z3\.\[H6OLF7X\XC1O(1L#K"1!0:
M9AK"-$16I1E+$P]QF 41H$IC6/&;?!'ET5S+0KBD#8>Q#P6E['"4^92]5,8>
MT7@M61H& ]B?@R1+ KC(HN1G?=XV]PMC4&0NJO^2?(P\ME3\FW/NSU'H1AI+
M[:9M0%7! %29D,]\7($>?7#="PQ;H"C$IBUIWX[_"P[Q4@A1&M?8?$-C7E9O
MJ[#:L0(S K<&WS1Y^<S1]]B<+VO7/;UZ2*5+R[83*>WI2;!LIM1EG5[TNIU>
MN36JY[KV!,%4"] S2PZM+E\X]\86!W"X(M@QE#OAFZQQ\]@17<'(>HP>L?J:
M'G<.J'Z@Z!QB3UTK#Y(HQ2K*\V"41IU7X?I 996&0_:1EFDPR$/VL7.#*^NA
M_1]VV#ZZ3 R#$1BA($N#)(L<*+(I<($UM&#-WTJ1!NU3$FH5IA\PQG C[*RL
M"==28A9I02$<"[L0HG&G<Z'=E9F^ T*Z$Z "/,*;$-*87-T_,*FNT'\A<(SF
MZQ6X^JU]_8K]^MU&@J -'/UZ0N\D)OR.>SFF&!0BG62SDR@5IP&Z<J9X#?<Q
MKYS]F-X_1'.M.PDHF^?"W:ZK98\]-9.VFOA*NML!X79<27^S,'LT>T#MT'R@
MJTH<GCS=W;I5=/*1+:C^WK&P-_(84H4TSLM>LOWRTSG+#FVGY( ^XM_7@J<"
MO2-\T4C 7+B6P><8K"^26F&U="S)#LL>P&B62!?GVQ'\/0+@"(1T>=,H*R>R
M6#E^$$K?"^:M-BVG.XH7)UXPKLEL] 7,/'0#8UI_'Z+CBQ+*)-UG_55.N^</
M20?!U>WG:R2R2[:?RK/>W@50O,P]%&J;:4Z.%O0*)*F$(=]>#G] :D!S@BPY
MB,@ $1GFKY]ES%^&MIK@-^U0RA.@VV,/[=B(/UOA47HE >"H:J<S=H%ZKF@^
MNZ,?BL<CSLM2KN8[Q8=J%W%[*XX]]H4[^\S;X58%;EJ:@JHE23RTU1MDW;PC
M)!>JK4HVX\_4801E5MD6/M:'"8AJ#]?5WGOMZ='?>2JBZTS=@YC&(&:6?S5N
MOF[>W!?^J;DE]P]V&#V5R*A*3, :]H:#+M/^$>PW5LW=PQ,-#2W.+6>"(VI$
M@/.)4G:](06;_T2<_P]02P,$%     @  #&B6C1-]>\P P  +P<  !D   !X
M;"]W;W)K<VAE971S+W-H965T,34N>&ULK55-;^,V$/TK ^UB3UE+EN/82&P#
M3NQL7"!N$'O30]$#+8TD8BE2):DH^^\[I!2M4R2^M!>;G(\W[PW%X:Q1^H<I
M$"V\E$*:>5!86UV&H4D*+)D9J HE>3*E2V9IJ_/05!I9ZI-*$<91=!&6C,M@
M,?.V![V8J=H*+O%!@ZG+DNF?URA4,P^&P:OAD>>%=89P,:M8CCNTWZL'3;NP
M1TEYB=)P)4%C-@^6P\OK<Q?O YXX-N9H#4[)0:D?;K-)YT'D"*' Q#H$1G_/
M>(-".""B\7>'&?0E7>+Q^A7]UFLG+0=F\$:)/WAJBWDP#2#%C-7"/JKF#CL]
M8X>7*&'\+S1M[ 4%)[6QJNR2B4')9?O/7KH^'"5,HP\2XBXA]KS;0I[EBEFV
MF&G5@';1A.867JK/)G)<ND/964U>3GEVL4+-GYGK#&RDL;JFAEL#3*9PAVG.
M90Y+USAN.9I9:*FD2PR3#OZZA8\_@!_!O9*V,+"6*:9O\T.BVO.-7_E>QR<!
M[YD>P&AX!G$4CT_@C7K](X\W^C_TPXJ;1"A3:X0_EP<*IX_JK_>ZTA8]?[^H
MNVB7IF()S@.Z20;U,P:++Y^&%]'5"4GGO:3S4^C__4A/PV]_WZ]A E\^3>/A
M\ I6Z\?-TW*_>5K#9KO;/WZ_7V_W.UAN5W"W7GW;;+_!\H;<F_UF368+=())
MT1\AG($M$&Y463'Y$PJ60B84L9?Y5ZN^9OP%4^#2(O7)@F86P32L I9KQ%88
M32821Q8RY2Y *G?AF0!6JEI:4!E\AN%D/(CH!@E!OC-G:PI.1#[#L8-NGQ!T
MOZP[8MK>XD'7-*P@GGJ^4]]&0HNBCY-^JR5"/.D2!K!_(]#0T# \E\0T]=K_
MK8<B$F8*UX<&"CHQ- /8(?J6Q]$5;!6)'/\Z 3Q8[Z*UZT6*EG%A'!,'SZEP
MXIOP7K$NJ*/G(2=7YFW'WY;WU8>COOPMXQJ>F*CQF(0#S9SGV7FZZJ:M;P;O
M?>7AT1 K4>=^5%,KW!&V\ZRW]J_!LAV"O\+;IX0^,?K,#0C,*#4:3,8!Z'8\
MMQNK*C\2#\K2@/7+@EXTU"Z _)DBD=W&%>C?R,4_4$L#!!0    (   QHEK5
M0WXJ( 4  ((+   9    >&PO=V]R:W-H965T<R]S:&5E=#$V+GAM;(56VV[;
M2 Q]SU<0ZK9(@52V9>?2.#&0I"Z:A[9!+KL++/9A+%'6H*,9=69DQ_OU2XXN
M<5'7?;%UX>&0AX<4+];&?G,%HH?G4FEW&17>5^>#@4L++(6+386:WN3&EL+3
MK5T.7&519 %4JD$R')X,2B%U-+L(S^[L[,+47DF-=Q9<79;";JY1F?5E-(JZ
M!_=R67A^,)A=5&*)#^B?JCM+=X/>2R9+U$X:#1;SR^AJ='X]8?M@\*?$M=NZ
M!LYD8<PWOKG-+J,A!X0*4\\>!/VM\ :58D<4QO?69]0?R<#MZ\[[QY [Y;(0
M#F^,^DMFOKB,SB+(,!>U\O=F_0G;?([97VJ4"[^P;FS'XPC2VGE3MF"*H)2Z
M^1?/+0];@+/A+P!)"TA"W,U!(<H/PHO9A35KL&Q-WO@BI!K0%)S47)0';^FM
M))R?W>K4E B/XAG=Q<"31WX^2%OT=8-.?H$>PV>C?>%@KC/,?L0/*)(^G*0+
MYSK9Z_"SL#&,1T>0#)/C/?[&?7KCX&_\V_3@@W2I,JZV"/]<+9RW)(A_=Z7<
M>)SL]LA-<NXJD>)E1%W@T*XPFKUY-3H93O?$.^GCG>SS_MMR[$=_^?HXAS-X
M\^HL&8VF</OEYNOG.3Q>_3U_@"MJH=3H5"HI0C^8''R!<&/*2NA-P)Q.'3@O
M?.V-W8 5'L&;8(5YCJ%_P!.5X<TA/V=8,IS.'^_#U6CZ%FA0!(@O+"*4C3Z0
M]0%4W;3HRPM"9WPQ >E . (J&A'N_. Q(+>5]8(\"$A&'3STD?8Q):-X"*_;
MOV 0 D9W!)H&'*6<8X96*%B@QEQZ. F D\:^G13OSTZ)K&6M E$.#F$TB<_@
M]=N&V61Z,/]>2[]YQ^,@ ZH8C4C7L#J*C\G?(1S'$P(</.D4K:?9&&*LC)/!
M:AR_YS#9]H"UF5K,I \GC>(QGW1(,9VRAZ_$I85)G!!@',*<_UR+T3 <FPSY
M5'@D]C,DGQ0>\-$[RDP5@S617EE)PUBJ#61UJ+;0! DB9.\=3:R=I9;_4;JM
MPUQ:Y^%[+:RG^(C94)C<FK))50FMI5Z"+"N%-,5] R4)ZI;FM?0%;(F(.E(W
M_%!];*W0M9J"I5FA#=YJ35FI$ ?IC$:N!GQ."Z&7"$NBV05149L[=,2!)9:R
M-BCVKGZ0/GW9;%/B(]*?0]^BI5A0EWA)+LA2&_WN*7Z(.5<E<TD.7;UP,I/$
M&S*#9B59HXL-TT29$IFYU&V8 =JI+A1L2UDUB=O"+9%C.>E[7*&NN5@9PK8:
M#UN*;N]O^+[KM3B4>H?#Q@R$W>[<KC%;*33W%- &A754Z:5L*B9RKN@'2J5<
MT$7;KI/ C452/GEES=>^9U,0"_CNI8!]<=+:6M3I)A0'Z$ N#<MLP<I,59V]
M*"I#.I<^<;W7O/8\K2E&L5#8R;)SPN&06 41MW'2=45=455,31.G_>Z3X4I(
M%3SP,!//E=B@=3%<A^XUN_NC"=S_Y'Z;;(Z G[T<T"\;W$BEL9XD -S83$]H
MD+0N Y[J\7LMOQ%E->W43(W$*PP5*$B*6>F)ZN B=$DG@X=Z45%[PL<N^)U"
M._I!%%N-+H+T4^$*7G.0^,AVC0;R_0?-IV/:3I1J5C5*D&R) TY]+R?[)-/F
M+0(7_B<9T$@ C[J5;[SKXSO8VHM*M,NP_5%M3:U]LR+U3_L%\ZK9JU[,F^V4
M/D!++HG"G*##^/0X MML?,V--U78LA;&T\X6+@M:DM&R ;W/C?'=#1_0K]VS
M_P%02P,$%     @  #&B6AS_ZON4!0  F X  !D   !X;"]W;W)K<VAE971S
M+W-H965T,3<N>&ULO5=;;]LV%'[WKSAPBRX!!%MWR[D8<-(4#7I)9KL=AF$/
MM'1L:95$EZ3B>+]^AY1\2]VTZ;H])*:H<SZ>"[^/XMF2BT\R151P7^2E/&^G
M2BU.NET9IU@PV>$++.G-C(N"*7H4\ZY<"&2)<2KRKFO;8;=@6=D>G)FY6S$X
MXY7*LQ)O!<BJ*)A876#.E^=MI[V>&&7S5.F)[N!LP>8X1O5A<2OHJ;M!2;("
M2YGQ$@3.SMM#Y^3"U_;&X&.&2[DS!IW)E/-/^N$Z.6_;.B#,,58:@='/'5YB
MGFL@"N-S@]G>+*D==\=K]%<F=\IERB1>\ORW+%'I>3MJ0X(S5N5JQ)>OL<DG
MT'@QSZ7Y#\O:UNNU(:ZDXD7C3!$465G_LONF#CL.D?T5![=Q<$W<]4(FRI=,
ML<&9X$L0VIK0],"D:KPIN*S431DK06\S\E.#L>+QIY3G"0KY"UQ]KC*U.NLJ
M0M;ONW&#<E&CN%]!\> =+U4JX:I,,-GW[U)$F[#<=5@7[J. [YCH@.=8X-IN
M\ B>MTG3,WC>$]*$]UPA_#&<2B5H<_QY*.T:U3^,J@ES(A<LQO,V,4*BN,/V
MX,4S)[1/'XG9W\3L/X;^W:UY%.5PC.]O)E?0AQ?/(M=Q3F$\N;E\\_KF[<NK
MT=C,]4[AZM</UY/?81C'55'E3&$"-RI% 9>\(*!4\_(.X2V7<L^(&Z-XSRC7
M1DP"GP$U-DXWG056)GK@0U;&>45[!\@=9CPGL<C*^4EKD@K$O=WU *)%Y"3J
ME7"9LG*.! 03KEC>^E901SJJ8[TP+Q"8@I<88S$ENP;:A^=P!$YH>9$'Q_00
M>KUZ*K!Z?@C'K<M*""P5+%!D_#M6.6G=?#.0*9+2(NE=G#,ILUD6,RU?$CS+
M[7EZ=2L*?(K'L7RGWQH6O"J5W+&G=&>"%Z1W3\G_R#F&(Y?^P+?LOL8_@K#O
M0#W3BP)*]VHV(RW5753L'F6]?=Q3" -/_[5,W4FTGE846H!@S$*46M\U(]?J
M.53TIS?QP?XR[>I9KNV;#NHEW"!8CR/+#_IZ/4I^0OM.;VU6KO:+^1S\CD/2
MF^?Z%*'D\4$9!-;Q*0Z;O6AJ$*]@(E@I<]-!&"9_D9[3@4;M^H$.924M@$R4
MQ NIMWG,R[(YVY:92N%Z= G]J->!,3%&]\:U3XW$11NB7]=0$QVWL7!..Z;M
MN]GC_8)@I<YG4X@5L,5"\/N,SD',5U04>[\H54F?!'GV-Z6BH]XOB^;TEIZO
M6";@(\LKU([7I4+2)04CLH;7F)#1<$ZD_TF%2BI!OR:$$N\5."X41DTZW]06
M_[_3%J_>@*X5]NO=&#EV/44<,&3[7[5%\R+P-$=\*XCZI#5V$/PT;5GKA%XE
M[*VI;D9?:(I#_2%!<&H9Z-DVV?RPKI!$NAK(M1P[A##R_Z6>-">";SE.SW3-
MM?I.N.Z;:^O4QBFC$H]P49$CTT385Y;MO-26DIA#![S9G\_!L^V.O:&5,=AQ
M 6+@7# J?Z52+@S9IJN:735^<WA+F'(F$EW5)*/N*2YDAY@&+$DRW7%KU^E0
M4 ?D17O<$5$UFPA8<U9DL2ZDU!\JE$=&>^6H$9[1^,-:88[-*4]M,U>(,L8F
M,;:D&+<>M^/AUH/2+!OQP&*1\Q4B9;!;50(S(2E#XIK2@ <^$+;?&&91V7Q=
MR,>_+5K&U8C N"Y)S0:X95D"7TZU'O8=;IMF>0ZQR8]T=P.BE4OGD6M%COZ4
M<#TK\IS6QVU5==E,P+H:X&M#FSCI]D/P U(&!T(K]/L-);R Y@(#W;<\6L.E
M(RWLFPG;\B,;#GV&=G=N"P6*N;D32>HWY5)?'#:SFVO7L+YM;,WK.QN5:YZ1
M?N0X(U>[TPO:(.I[4/V@^,+</:9<T4W&#%.Z.J+0!O1^QNF :A[T IO+Z. ?
M4$L#!!0    (   QHEI)T63A!P0  +D(   9    >&PO=V]R:W-H965T<R]S
M:&5E=#$X+GAM;)56VV[C-A!]]U<,M(N@!13=+%\27P#;FVV#(HD1>[</11]H
M:6P)D4@M2=MQO[Y#RE:<-@FP+]:0G#D\<^-XN!?R266(&I[+@JN1DVE=7?N^
M2C(LF?)$A9Q.UD*63--2;GQ5262I-2H+/PJ"KE^RG#OCH=V;R_%0;'61<YQ+
M4-NR9/(PQ4+L1T[HG#8>\TVFS88_'E9L@PO4WZJYI)7?H*1YB5SE@H/$]<B9
MA-?3V.A;A>\Y[M69#,:3E1!/9G&;CIS $,("$VT0&'UV.,.B,$!$X\<1TVFN
M-(;G\@G]J_6=?%DQA3-1_)FG.ALY?0=27+-MH1_%_G<\^M,Q>(DHE/V%?:T;
MMQU(MDJ+\FA,#,J<UU_V?(S#F4$_>,<@.AI$EG=]D67YA6DV'DJQ!VFT"<T(
MUE5K3>1R;I*RT)).<[+3XX46R=.E\2N%F2@IUXJ9< U]3>A&QT^.2-,:*7H'
MJ0UW@NM,P0U/,7UM[Q.KAEITHC:-/@2\8]*#=NA"%$2=#_#:C:MMB]=^S]6,
M2;R<6E?G[$"5I6$B)>,;M/)?DY72DLKD[[><K['CM[%-ZURKBB4X<J@W%,H=
M.N.+3V$W&'S /&Z8QQ^A_U22/D1ZF^?]P_(&P@ N/O6C,!S 8ODP^^-R.EG<
M?('9P]W\YGXQ6=X^W,,R0WL_XP>KVQLH2D[8APD%D)(.C*?PB$HS38N'DN>K
MK8);GE!XJ?=@7C .OVA",>91,*B-+UA9#1X;?:-ES\/!K\ *>C84Z)>;00O8
M4-8T;"LC1V[0"=P@"&BA60'*I%F!6$,BRI(:7YGH&4VQ7N<)2N7"$QX RZH0
M!T1:&MI<\,O3%J2YI%=#2.7!Q$)1+2994XSN*SX9(\>K2HKGG%X)+ [0NXK=
M7C<X46$[EA=L52#0(WKB3O&2%N;=&'@VWFMA(I#S#; ]DZF"/4JL02C&Z5::
M(X.C,TG,R[H'ZW2\9FW=)"&^;DUJJ-^.*),=2GJ!ZS70.X+PE>42OK-BBZVE
M!3YO;OC_5NOEKD9JV5O-C=!(K9M3C&U1PY%)%/;=H!U#& 9NKQ/#9^B'WE6;
MOF&GZX7=UHRI[))&A"[H^L?%-P6]MAOT^M".W:!K#6*O7QM$7N>JM;3%$%V%
M;AA&$,:QVZ<XFX@>R^2LIY*SG@)\-C+"GBE"B[V GMVBL!.$XO<9.MY5LV/R
M^7.Q=VF2J0KM+"H.=8JWG*I-;'C^SWM<F/XOWI%=Z'4:,B[LLYQT<F7M$I-9
MJOH=]2.(W;':.#YKB+P0#LA,>;_U.OEGXZ1$N;%#4Q&S+=?U9&EVF[D\J<?1
MBWH]U(GU)N<*"ER3:>#U.@[(>E#6"RTJ.YQ60M.HLV)&_RU0&@4Z7PNA3PMS
M0?-O9?PO4$L#!!0    (   QHEIHY3,\; 4  $4,   9    >&PO=V]R:W-H
M965T<R]S:&5E=#$Y+GAM;)572W/;-A"^^U?L*)F>%+UE)X[M&?G1U(<X;NRD
MATX/$+D2T9   X"2U5_?;T%2EEI'TUXL MC]]O7M CY;6_?-9\R!GHK<^/-.
M%D)YVN_[).-"^9XMV>!D85VA I9NV?>E8Y5&I2+OCP:#XWZAM.E<G,6]>W=Q
M9JN0:\/WCGQ5%,IM+CFWZ_/.L--N?-;++,A&_^*L5$M^X/"EO'=8];<HJ2[8
M>&T-.5Z<=V;#T\N)R$>!KYK7?N>;))*YM=]D<9N>=P;B$.><!$%0^%GQ%>>Y
M ,&-[PUF9VM2%'>_6_2?8^R(9:X\7]G\-YV&[+SSMD,I+U25A\]V_0LW\4P%
M+[&YCW]I7<N.QQU**A]LT2C#@T*;^E<]-7G847@[^('"J%$81;]K0]'+:Q74
MQ9FS:W(B#33YB*%&;3BGC13E(3B<:NB%BUGRO=)>UQDR*5TC1S[H4#D^ZP<8
M$+%^TH!=UF"C'X"-Z:,U(?-T8U).]_7[<&SKW:CU[G)T$/"C<CT:#[LT&HRF
M!_#&VVC'$6_\ [S+RF/'>[JRQ5P;)6%[^GTV]\&!'W^\%'*-.'D947KFU)<J
MX?,.FL*S6W'GXJ=7P^/!^P/^3K;^3@ZA_]_J' :[^_1X0\,A_?3J[6@X?$^S
MJU^_W#[</MY^NGN@V=TU7=]^O7EXO'W\\OD&&\^F/<W*,M><HJ[LEAOZX&Q5
M=NG6)#WZ9.B:$R[F[-I*3:A+(6-)<JG,AA+\YAR@+[MJ)R:[H-G-!X1&7",'
M3C)C<XM/B5>E*^VMVY D5B?L(Y9@=@D#B5[3\:!W@K[(<X'3AA+E,PAA:*3L
M8GUISA!E6J#>.1G,.9D3VBPA6^J /97^B4;#I,%XB_Z4SJZ@[TEA6.G XJ<V
M@9= E"A^Y*3-JSI?P5*<.TXG462I/.$H1]3LN^0#<.)!;A,XL+0K=B8ZT(W;
MM4"3$[M8Q-!KNF(\,*TSG60XSY21DYUDQ^*>O/=MQD2;G40KN FJ: )29T.)
MS8!P/97*!8E04,#A7&/,8#Z3RL6[MD[QM'))AA&XG^#]8CM.K$N;6B\L,-:P
M?GIT]T+B7].X^^YD<'3O<,FX4*>308]2<D'3Z=%5G(#LWL"OF'LXK<Q2SW.$
M/1IT!X/!T36O<+>4^X69QJ-'IY MHPJI);"#K''Y?/,TG@Z./EB;KL$=(>[H
MY-W1_8OQ^4BS[O%T0B\%H4V25T(6M+\47+R,+$327M.T-VGIB=(FB:U09$D2
MZY5"%+74I#=]EH+Q.(U(><\0CA*CWO$>CJM@AI]P-WMN1([_(5*;*M7FV<ZP
M-]X104(LJN1:0Y&06LT;GM8J._W5H\>LZ2/]UY88.S31/KH44X 6F/-.Z\\W
MD1$>]("9[Q5(!\O0E]$>34,[J9Q#Y7.0'I&!C1K%TEA*L__'!A8?94@6D2^5
MYT65(ZQ5'5"</FZ/2-OPG7PVG/6GA[EWW!O0AI7S+]-OLCT^1$&I>GUA/M)>
M"V&@"(L..;!PMI#!J0V*A1RT(3=T&<*!=BRB%-@9[.S$/OMWCA9<P[YKO1?5
M;:22'"4LQX-'K!@\N;2IWX7U$TU(#;RTB@-'RMW6F>5!0+C.,;;:^[PNU;+M
M091?!330O J1L# M"%)KV(B3K+DLTF>6^8W,2"'K6H=L=Q#U:-O=F3@NF<)K
M3=+%=:@-Y^!8A:>AF!26H9V1<PKJ2<9=:=%>M:.X%-[$8$G#0+(=F;OW&>",
M#21I=5*4)H;]V4R^26(DI$R^>LST7GHP]'>>=J#",CY@Y1I$<]>OO.WN]HT\
MJY^&S^+U QO97VI,LYP74$5?3SODZD=KO0BVC _%N0W@7?S,\,YG)P(XEVNC
M78B![7\.%W\#4$L#!!0    (   QHEH/<@"-90,  )H'   9    >&PO=V]R
M:W-H965T<R]S:&5E=#(P+GAM;(U52X_;. R^YU<0[J)H@31^YC$S28"D3;=S
MZ&R0S+:'8@^*3<?"V)(KR9/I_OJEY,1-@6EV+GJ1_/A1%*GI0:H'72 :>*I*
MH6=>84Q][?LZ+;!B>B!K%"3)I:J8H:W:^[I6R#)G5)5^% 0COV)<>/.I.UNK
M^50VIN0"UPIT4U5,_5AB*0\S+_1.!QN^+XP]\.?3FNUQB^;O>JUHYW<H&:]0
M:"X%*,QGWB*\7B96WRE\X7C09VNPD>RD?+";VVSF!980EI@:B\!H>L3W6)86
MB&A\/V)ZG4MK>+X^H7]TL5,L.Z;QO2R_\LP4,V_B088Y:TJSD8=/>(QG:/%2
M66HWPJ'5C0,/TD8;61V-B4'%13NSI^,]G!E,?F<0'0TBQ[MUY%A^8(;-ITH>
M0%EM0K,+%ZJS)G)<V*1LC2(I)SLS7S$EN-AK6*.";<$43GU#N%;JIT>,98L1
M_08CAL]2F$+#2F28_6KO$Y^.5'0BM8PN GYF:@!QV(<HB(87\.(NR-CAQ2\.
M$KXM=MHH>A/_/!=O"Y<\#V?KY%K7+,691X6@43VB-W_]*AP%-Q?()AW9Y!+Z
M"S-R&>/NK_L5A!&\?C6)PO &5HO-W>W=GUM8KS:P_;38K*!S4Y,;[>[DC56/
M@IO5>NM6X<W;/G"1EDU&FF *A(R7C2TCP#RGN@*9 SW1] '8@:E, W4)0)86
M%I7+C,JVELI@!EP?ZY[_2[N=;0;7O?M"(?[R>'J4>K*FW/?><$$N9:.9R'0?
M\"G%VIRQS>BYOW4OQ Y)[XXZV*U(987P!T2C_F08VL6X'X?CWE=7G9B]8X^H
MJ-F :*H=01%_JFF>MI@:J&UI0PYMO%FC3F$?HPDG_6$PLM-X..Y]^)^["(,Q
MJ5Y=\NVND^[CI=Y'86RGJV346SK:E"H*,APDPW8:M:P(LI,DIVD!1AI66K_C
MJ_YD%'=N<\H350-/'9?S& Y(-TU73T^ 1+F2E6.4LC)M2N;Z*EE;7S;S5F1<
M3JLVIVAS"EU.VVSM,&6-MIKXHW7 A.'O3D]K />%/722,.A?!>&)Z$\B+W26
MP."YBO3/^F6%:N]^!0VI;(1I6V=WVGT\B[;?_E1O?RURM^="0XDYF0:#\= #
MU?X$[<;(VG7?G334R]VRH,\3E54@>2ZE.6VL@^X[GO\'4$L#!!0    (   Q
MHEIP(+Y;9P,  '()   9    >&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM;,56
MVV[;.!!]]U<,U$6Q"R21)=EQXM@&[%RP =(F2-KT8;$/M#2VB%*DEJ3B].]W
M2,F*<W/0W18%#(M#\IR9,\/;:*7T5Y,C6K@OA#3C(+>V'(:A27,LF-E3)4H:
M62A=,$NF7H:FU,@R#RI$&'>[^V'!N PF(]]WI2<C55G!)5YI,%51,/UMAD*M
MQD$4K#NN^3*WKB.<C$JVQ!NTG\LK35;8LF2\0&FXDJ!Q,0ZFT7#6<_/]A%N.
M*[/1!J=DKM179YQGXZ#K D*!J74,C#YW>(Q"."(*XY^&,VA=.N!F>\U^YK63
MECDS>*S$%Y[9?!P<!)#A@E7"7JO5G]CHZ3N^5 GC_V%5STUZ :25L:IHP!1!
MP67]9?=-'C8 !]U7 '$#B'W<M2,?Y0FS;#+2:@7:S28VU_!2/9J"X](5Y<9J
M&N6$LY,SQC7<,E'A*+3$YWK#M,'.:FS\"C:!#TK:W,"IS#![C \ICC:8>!W,
M+-Y*^('I/4BB'8B[<7\+7]**2SQ?\J8X..$F%<I4&@W\-9T;JVD]_/V2YIJR
M]S*EVR-#4[(4QP%M H/Z#H/)^W?1?O=H2\"]-N#>-O8WJK$=^_'RTRE$";Q_
M=Q!'T1&<3<^OX79Z\?D4SKAD,N5, )>DO*)-90T4R%P^,F 6%L[QG<^4VRJT
MW=)*:RZ7;LES TQF8'.D24*ES.^G%;<YEZZ7ME:JBI+);PZ0*FF4X!FS1#UG
M@CPC^ 5*-)HF&U@H08>!&7:HX&G>5KSSN^=3E2%WY@^XP#L4$#7?N/DF\$E9
MDG*Q#H1^L\;-C7/3F1I#SH:=<VF1:F1!4RQ@5JPTL M.&.F'4FD/_ZW.6'Q$
MK>AP\,R^TE@RG@'>TT%HL,Z%(MF:I#A'G>-:_*Y:29(L^ )=GBOM0RHI%RDG
MV)HUCG<.X\%3\W*3\(*S.1?<$NR_J(A[W6?V-$UUA2^J6%.)!Z^O.!5*+G=I
MH&C=KIU$.X-H_XE52WK ;/*?8(K%G(:;VO=^?>T/XOXS^^W:?W>BXL-'[<O_
ML9"2G6C0>VK^R(44]9^:/WL9]9-'[2U+Z*73-MRX!PO42W_;&SJ1*FGK*['M
M;1\4T_H>?9A>OT;H9%I2[D'@@J#=O4$_ %W?\+5A5>EOU;FR=$?[9DZ/(M1N
M HTOE+)KPSEHGUF3?P%02P,$%     @  #&B6M4N)G'( P  ;P@  !D   !X
M;"]W;W)K<VAE971S+W-H965T,C(N>&ULG59M;]I($/XK([?J)X3!D#1* (D0
MVHM42-1PUP^G^[#88WN5]:YO=PSEWW=V#82<$G1W7V!?9IYYYFW'HZVQSZY$
M)/A9*>W&44E47\>Q2TNLA.N:&C7?Y,96@GAKB]C5%D46E"H5)[W>95P)J:/)
M*)P]VLG(-*2DQD<+KJDJ87>WJ,QV'/6CP\%W693D#^+)J!8%/B']7C]:WL5'
ME$Q6J)TT&BSFXVC:O[X=>OD@\(?$K3M9@_=D;<RSW]QGXZCG":'"E#R"X+\-
MSE I#\0T_MYC1D>37O%T?4#_$GQG7];"X<RH'S*C<AQ=19!A+AI%W\WV-]S[
M<^'Q4J-<^(5M*WN11) VCDRU5V8&E=3MO_BYC\.)PE7O'85DKY $WJVAP/).
MD)B,K-F"]=*,YA?!U:#-Y*3V27DBR[>2]6@R,U4EB:-,#H3.8&8T25V@3B6Z
M44QLP@O&Z1[NMH5+WH$;P((!2@=SG6'V6C]F:D=^R8'?;7(6<"%L%P;]#B2]
MY.(,WN#H[R#@#?Z/OW G7:J,:RS"G].U(\M%\]=;46B-#-\VXAOIVM4BQ7'$
MG>+0;C":?/K0O^S=G'%A>'1A> []OZ?L/-SR836'_A ^?;A*^OT;F#TL%O>K
MQ7RY>H+I\H[WR]7]\NM\.;N?/\$W)$+KP.0PLYA)"A2^-L(*3<@A7)7(C*I:
MZ!V4(@/_?( CEEKO0+UHIZTV&1+,J("/T.]><H4K%9J58&VH!$Y_6A[S'VS=
M88K5&NWA=-CAQ\'5&-I;[;KP<-XB_S8I KWP#)Y_OG%LTG(N/)M4</HD[:#A
M.K:M<*O^A<\5WW1A2O^2'OTC)!_AZM15W9XDAY/7_G0\];70SU"\!)D?8\CW
M1-A%?I7:4DBY%'S-0HTV/-B:/35K)0OAWT#7A6^2]INV=I20U>ND20=2;XS:
M8,8+V @K3>/82B$4OSQM.+UN;4V*'!-=\-Y*Y^/&"MY;8_F8WW@FU%B'P86&
M!= QA1^E5"'^?/$>7BH:O@WUP9AI8QG)D>OXC6J\3(<1";0A4)+;@<F2Z7#=
MD+$:=VZ?4\@Y7*\SP&"6>T?M8(U*XH9#1Z7P=<S95B29$C*F6+?1/7C& \V[
M<9[VEC,8.)5B@R"\'%K)<1/9!GT@,,\YL<#1E]R].0>)NY;O:^,D'7+/+$+!
M<NO8-F]<!!P!X4K(>8JZ[ENO2'PR!"JT11AUSF= 4SL/CJ?':3IMA\B+>#N*
MN:P+J7W.<U;M=3]?1&#;\=9NR-1AI'"/\H *RY*_"-!Z ;[/C:'#QALX?F-,
M?@%02P,$%     @  #&B6JSQ531M!0  GPL  !D   !X;"]W;W)K<VAE971S
M+W-H965T,C,N>&ULC5;;;N,V$'WW5Q#>Q2(!!%N2[[D!N>TV#[D@SK8/11]H
MB9:(2*27I.*X7]\SI.PZ139;((@I<>9PYLR9$4_6VCS;4@C'7NM*V=-NZ=SJ
MJ-^W62EJ;GMZ)11VEMK4W.'1%'V[,H+GWJFN^FD<C_LUEZI[=N+?/9BS$]VX
M2BKQ8)AMZIJ;S86H]/JTFW2W+QYE43IZT3\[6?%"S(7[OGHP>.KO4')9"V6E
M5LR(Y6GW/#FZ&)*]-_A=BK7=6S/*9*'U,SW<Y*?=F (2E<@<(7#\O(A+454$
MA#!^M)C=W9'DN+_>HG_UN2.7!;?B4E=_R-R5I]UIE^5BR9O*/>KU;Z+-9T1X
MF:ZL_\_6P3:==5G66*?KUAD1U%*%7_[:\K#G,(U_XI"V#JF/.QSDH[SBCI^=
M&+UFAJR!1@N?JO=&<%)14>;.8%?"SYW-10&*';M1H<!@ZJ3O $S;_:P%N0@@
MZ4] !NQ6*U=:=JURD;_U[R.@753I-JJ+]$/ 6VYZ;)!$+(W3T0=X@UV6 X\W
M^$66CV*EC9.J8'^>+ZPST,1?[Z4;T(;OHU&?'-D5S\1I%XU@A7D1W;,OGY)Q
M?/Q!K,-=K,./T/]O13X&N;M_NF;)B'WY-$V3Y)C-K[_=7M\]L9N[K_>/M^=/
M-_=W[*D4[%+7*ZXV;&7TB\R%99PMC.8YX\;P#=-+VED*2SW(*T:YR@QF3C/I
M+,LJB5#AE1EM+;9?A($9VOM9.!O!66(MJPU4[4JIF,.9WWOSWIO#,6$,=W0X
MG6]1GDJ@X:E4?($E5WEK0Y6S+3\+D?'&"@^9E5(L]VQRD4D_-FK^+ P[(!NB
M(HV/V>7]U:U?)\>'$5N7,BN9M![FTL-<OXJLH5G![I=+9&M8!!R%$16L%@U"
M!"5AHD@G\9[F"\NTLKJ2.7+):51(VV/GE2MU4Y0!OTTXEY87A1&%S]J -=4
M=]/RV?+G\V[?N,U*1*"<Y1H>2KLV(E^%74#:,%Y5.@,L4*UN#-6*AE9.$;Y%
MAS&AMJ4 *:#?"OK;40P^O095)O90]K-4 )(JT[6@XH6:!;.]?+T()\?VK:MU
M^*F]?" S0*"72IKV(#Y [H764%@_.QEB%"^\:BCM]X[=3X,7^%!9J*?)"T'*
M!<>DEEQ "@+>AN"VNB+Q$\,D=_4B+!WY1@.0.-HDUVL%E(6+B *P7H(L)*BS
MY]9 4G>I'/:@?=G@4)[]:*!1:F^2"7@G\%W+;SLRI[/=E@89:M]0*9940(JQ
M,2N-XT BU+ZO_I!=J"J]W^<!UGM4!::W96\%&:$5"R71 APOMYOB%?<!($8>
M?*<43Q2FAM?!4D.%:WO4>2J-$&\^#@RC'0V'V=ZAV4X#?MAY;#O@,QM.)]$X
MF=)J-HR&@W%G_D$,1YTK:?!Y9Q5?D/81D!&5E\?2(&,,!FU1OF261+-!C-\X
MBM-!9]XLH"4__K4)+&E?^CS M5Y)C%A2EJ1Q-$KBSHUJMT/B546<;D-A"5*:
MSA)8SZ)X-NQ<">@YDZ&8O@XU?7K^#B]&T0!9CJ+19-@YW]] 7:1R7!723SZ2
MA0U:,<@*ZMLU.Z2_D,I[63:+AI,)FT;I+$&<3AC2:AL;FT3#=(#-03KK/)"L
M_&@D_6P;B+\B@T&4C&(8Q\FL<^_I^ _?["#8'[*#Y)#-QF-VP))HDB;LL',G
MZ(OET3ZS=!Q-1PDM)LASXLU_@8C?JJ$/D-Q&'W8BBA-7*\R=QABALLW6-PC0
MMW._TGYN(2N,5G2#W'(9".R]]UGN[UV::F$*?S4D6AOEPOUI]W9W^SP/EZY_
MS</5%9HN$ :KQ!*N<6\RZC(3KH/AP>F5OX(MM,.%SB]+W*"%(0/L+[5VVP<Z
M8'<G/_L'4$L#!!0    (   QHEKG<A_4T0D  '0;   9    >&PO=V]R:W-H
M965T<R]S:&5E=#(T+GAM;,59^V\;N1'^5PC=]6 #LF3+CZ2.;<#.X\XH<C7B
MN$51] =JEY+8[))[)%>R[J_O-T/N0[:L)'V@0!!K=\GAS#<SW\SL7JRL^^(7
M2@7Q6!;&7PX6(53GX['/%JJ4?F0K9?!D9ETI R[=?.PKIV3.F\IB/#D\/!N7
M4IO!U07?NW-7%[8.A3;JS@E?EZ5TZQM5V-7EX&C0W/BDYXM -\97%Y6<JWL5
M'JH[AZMQ*R77I3)>6R.<FET.KH_.;\YH/2_XBU8KW_LMR)*IM5_HXC:_'!R2
M0JI062 )$G^6ZJTJ"A($-7Y+,@?MD;2Q_[N1_H%MARU3Z=5;6_Q5YV%Q.7@]
M$+F:R;H(G^SJ%Y7L.25YF2T\_R]6<>WQ\4!DM0^V3)NA0:E-_"L?$PZ]#:\/
M7]@P21LFK'<\B+5\)X.\NG!V)1RMAC3ZP:;R;BBG#3GE/C@\U=@7KFZDUU[8
MF;ASRBL3)&.U=V<+G6GE]R_& :?0VG&6)-Y$B9,7)!Z+C]:$A1?O3:[RS?UC
M:->J.&E4O)GL%/A1NI$X/AJ*R>'D=(>\X];D8Y9W_(*\ZRRSM0G:S$5CIOC[
M]=0'AQ#YQS:#H[R3[?(H;<Y])3-U.:@(1+=4@ZN??C@Z.WRS0]N35MN37=*W
M.VB;DO^&&/%YH9 7F2TK:=8$2&:-!R:Y#"H7,VVDR;0LA,=ZA50,7DBG2,SM
MVP_BU@3E#$N2Q1"7V4CL_?3#Z\GD\ V>W_+/HS?[0II<:.RMG(:\B@364Z]S
M#1H8LJBW.!=Y1"K\[&Q=/9'6/1XFH2PSV+D*"^60,V%!<FZ' M>BW<5V-6H,
M><]"+I68*F6@C:I@#50S#(++8:V*LAZ,)@3NR6[?JO$PNA^U1LV544X6Q9HV
MJXJ6RRZRDJG%D]WBY^OKNT;$J&\VO"/%:F%)H%T92.LP2H#?COC_N!0K\^@Q
M-C*J;:P 73MV";SMA/1> 7C+*(6%-.P';9;*!_(GV4Z(04J)> #=9%_HM$ZQ
MD;@NBB2@U8A2!JMH9P*9XV)#_>EZ0PH'2Z,L4LUXF44UR2M361#XON<>56CP
M'07BB.,4VTO?N':F<@*_"098NOE S.T2L4DF-FO ]H2!9:W9%\_7QA!)HCCH
M^49ALVUG/5FPZTP^+Z[?0V 4-?L.)CD=+,&YOU6.'XK:((:2!U?:*W@LUUF$
MY=[.PHJ CVX>P@$Z6XB5PBU$]U+;VL,?\4"XA&($#D_JWSF*E;#FD]5OM:XB
M!$:%?I*EU7_F"(@'I<?#GK><R@H\U#-->8!M&TQ2HQ2X34D:'&3F>EITVN/@
M)KW$9TL2J.EH7);5SE'$KI5TM.KHU1MBE([-AN)'<30Z0Y4L"B[XT.)',3D:
MO6YNP;T<M^]4ILHIE$A5Y>1%2V;.EO\UO,B2;\!@V$6/KQ1W+<5Z1,3=.-03
M<5$L;6%H0<R/+%==LKQ3@ FK0H.*+*T+^G>^L47UZ]YC@NN9FLV>#C0D]E2;
MIY[^EH-'.VKD:5LC3W<6MP?/->F]#[HDPMY6'K]/ C-.+! M#%^OC=HT0:M#
M8N26].%-A Q<BN[-H-UE7R$@2OE%"=6>RRAYM,A5)$=P=A!R-D,<<!9 )4"H
M&,J:SH1BB>290+2<ZD(',$KDLI?V()B4J2-[J4>T^%[YD?B36O=T2;P!&=:K
MI(DC<05# .67* 62XH*PT;EJP&(<N)_R$8;8R2H'K3+K<3=8KER%XBA^5/D!
M*F:FNGU#,;6FCE;9E"T9,$,V\$YHG+(^]5Q> '@1Y",BTJB93H@L95&G "PP
M@<0J@ZN<J)FJ/^UHL@_=-(T+$<-UQ"E3>DDVXG%/%B377LWJ I O8S64&3N8
M)#;90GW/\QS7*(+:<0!@V]S:? 5^2@7 S ](8MZN3F1*5509:E91D;-0(_)@
M.*JK9_^AAL RKKK]JES*M<CUC*H04UD7>RV%MO[>E8EG;2:>[<RC3XI\)/HM
MMK,&O[.8(MLR\S^3*+ZZX%<;Q-\PWE[GEKLT=)8(1?%9/L)OMZ:K!J@$Q[&!
M_-!F=T\LFD&32Y=[<6/Q1^SU6LT/U_<W;6>HD;\X9^O6ARKG)J"AVON'=AL=
M?W#XQ^&&@N?BMJP<&H)H"]*F>RK>:9\5UM>NUV5"8B.I:WQC7] RT!SC.WH/
M1(:7<US,>U3/PBDG7,='B380M1Q@E(4A!F)WF*!:A:*9<4O<'H6K=CUIGT>5
MU5!P%N&?H5">TG@R["L$ '.H@N#,6 DD-R9L[MH/2+VD*5(>XGR,[I@F-2'>
M:X,;&MP4WK,T\1_)2M1!5J;N<!@)?KBA!!&0-;%!8X0@9UH7TC%J1!H6X5/H
MQ%"U)Y6FH#$!M2A<D811L<C-W,AS?Y.M&[B'Y ]^J=!"*ZCOFW._2)W,2A%K
MD)PU=X5+G4=:2*?35,%]0$O=\ H6P TPM0D"G@I._\ ,A@LXC48+-K$.D5%*
M:N*K8AT'&_5]\"=&DE6%69N+1=-W$U:(H3S7<80LUC'[)&(]3]-FX6T33$WL
MU'$"[1RH4FAN.O@K+OQG[;1')YUBY$4T-]=19Y[ (DV##5CR3)/-Q&!RGP)\
MKN)4O[A0]5BZN9[!0,BC#A=)PR/"TU;U=!@+*I;0Y$F41JD+N-%SM+-2#T&J
M #A<)O*CK(,/;=-9D@?AT=X-3L4HIM%/QQJ3I:K/LEAA8B;M(S*S#:._QR3R
M2S*+MJA'&J<3(<DV.B#2!F-#/PZ(,BQ Q^VD80R@!A8HRSTJ&P%;\-PV ^]7
MFKE10[3WS2VNF),WG]J,)7B<6M ;2IP1EZ=%[Q.EO-MDV#YAH_+\2KR>*L])
MJCPH)&T!B7B>'!P>GS^51&\$GN@GTJ'/:@$)>+$6] !^7@XRS#N2NUJ?VJFN
M5^P)W\']53U%VF\M <TXVI%G?,><.*!M5??D/L2X;"%];+3H]87!V RZV)ON
M"X4VTJ[5T[9P+]M'D]<-(+B3[S]KQS9&DL@0>^KI1ERA46T7]+<PV\Z-_IT[
M-F2_XZ;.ZN* U\ZE1V=K\SJCB.%WT!$(&*XD.Z)02VE"6X4R&6.W1TF-&QI0
M6CZ7!;V(;R'G[)RV"=*.8\WHW XCF][KDZS?Z3$IJ(!HFK<1\;GRF=-MJJ;W
M2)7UNLU>TY8S,O@E6WL6428WXVVQ?D+I326/(OD2;;PVNJ\"*[YNVUL/# GZ
M[8'[[=R,':\VV"PU]^B\2Z)?;7/?1'1:_[J__O_$V\GU.%.EZ87>.V%-0X>S
M3<;L:#R&QO^<F07-'HZX]WL)>MNX,NY]"<&X.>?O/4"!XB5^%&GOMI^4KN.7
ME&YY_![U4;JY1F@6:H:MAZ-7IP/AXC>>>!%LQ=]5T-=AMN6?"V2C<K0 SPF5
MYH(.:#^T7?T+4$L#!!0    (   QHEJ)'<8<O@(  . &   9    >&PO=V]R
M:W-H965T<R]S:&5E=#(U+GAM;)U546_:,!!^[Z\X9=6T25$30J#  *FP3MM#
MI8IVV\.T!Y-<B%7'IK:![M_O[$!*$47K7N*S???=]SGG\W"C](,I$2T\54*:
M45!:NQQ$D<E*K)BY4$N4M%,H73%+4[V(S%(CRWU0):(DCKM1Q;@,QD._=JO'
M0[6R@DN\U6!65<7TGPD*M1D%K6"W,..+TKJ%:#Q<L@7>H?V^O-4TBQJ4G%<H
M#5<2-!:CX*HUF*3.WSO\X+@Q>S8X)7.E'MSD6SX*8D<(!6;6(3 :UCA%(1P0
MT7C<8@9-2A>X;^_0OWCMI&7.#$Z5^,ES6XZ"7@ Y%FPE[$QMON)63\?A94H8
M_X5-[=OM!)"MC%75-I@85%S6(WO:GL->0"]^)2#9!B2>=YW(L_S,+!L/M=J
M=MZ$Y@POU4<3.2[=3[FSFG8YQ=GQ#(W5/+.8PY29$C[<L[E \W$864)W/E&V
M19K42,DK2&VX4=*6!JYECOG+^(A8-=22';5)<A+PAND+:+="2.*D<P*OW4AM
M>[SV/TIE<FM</Z[XF@F4UH0P76E-%ORZFI,[%<WO8T=19TJ/9W(7:6"6+,-1
M0#?%H%YC,'[_KM6-/YW0D38ZTE/HI"-3,N.",U_7JC@EQZT>"#^FYV3&XWKN
M2X1"";K57"[ NK*!I59KGJ,!1A?VD&5&N4/_!3RDJ)\I>@=F7 150%8V)> =
MR4C!JC>!F5)M)' )EB@3*Z,$SYG;-I:&RD7N"$)!@@P)T][;EAH1JKJPT17V
M:Z0&9P<;+Z;I6?./#CG#.73"RU:/QG;8[;7/9@?T6[VP?9E"O]4]NU>6B;>>
MY7_(/X<D#>-^0D8:=OI].%:VT5[7J5 O?&\UE&$E;=V FM6F?5_57>O9O>[]
M=%8++@T(+"@TOKBD;JGK?EI/K%KZ'C97ECJB-TMZ@E [!]HOE+*[B4O0/&KC
MOU!+ P04    "   ,:):0RGO!L8%   L%   &0   'AL+W=O<FMS:&5E=',O
M<VAE970R-BYX;6S-6%UOVS84?<^O(-RB2  AMF1;MO-AP';7K@-:!'&[/0Q[
MH"3:)DJ1'DG'S7[][J5D658L.=FZH2\))?$>GOMY+-ULE?YJ5HQ9\BT5TMRV
M5M:NK]IM$Z]82LVE6C,)3Q9*I]3"I5ZVS5HSFCBC5+2#3B=LIY3+UOC&W;O3
MXQNUL8)+=J>)V:0IU8]3)M3VMN6W=C?N^7)E\49[?+.F2S9G]LOZ3L-5NT!)
M>,JDX4H2S1:WK8E_-0UQO]OP*V=;4UH3]"12ZBM>?$AN6QTDQ 2++2)0^/?
M9DP(! (:?^:8K>)(-"RO=^COG._@2T0-FRGQ&T_LZK8U;)&$+>A&V'NU_9GE
M_O01+U;"N+]DF^_MM$B\,5:EN3$P2+G,_M-O>1R>8Q#D!H'CG1WD6+ZEEHYO
MM-H2C;L!#1?.56<-Y+C$I,RMAJ<<[.QXIJ35$!IRSV+&'V@DF/'()ZB&\\_N
MXN*F;>$<W-V.<\QIAAG48';)1T!=&?*33%AR:-\&?@7)8$=R&C0"?J3ZDG1]
MCP2=H-^ URV<[CJ\;@U>R5?R^R0R+@)_'',TP^D=Q\&&N3)K&K/;%G2$8?J!
MM<9O7OEAY[J!9:]@V6M"'\^S/B%J06JS=(QS(^IQS@6^+N-+J()80?\9RQ*D
M85>,+)2 1N9R>74&:8E715[(6[!-(Z9W=WIG4RX$6%*9D B6"$M>DZ 7>&$_
MP%78]4+8-T%(*F-$UX1]6T/+@EVL6<(M$<H82-0Y";W>R"<7;C7HP.JLGC>
M=T//#WU<]4-O%'1)0T[Z14[ZS\T)I$+)F M.W7B!.[F[QY)%YDHDQ"KR\<L[
M\D'&8I- ".MVS,A$(HX062 66J5DYH8!TX; :5.VHF*!A\+V]VY[&>N3LK7F
MQTJFV>G/Y;03;@C%>%><CS+GXR,9(6;OVGLH(FK)EFE&F.!+CC6!!4+C6&VD
MHPLU0,&(HND&1H@FD^PA'C^WL)OJQ("#"5_P.&-P_N;5, @ZUY/YS*W\ZPLR
M##L>X46PG\T0Z<2'T8O+P8\.@Y]L-,)C<]B59HRDV?1C./U(I4D0&WO#<RNT
MB:API7\BAE+9>E(0+F13=Q3T.;84R)]XO#J;N,WX%".-%#X[VN6A7>WM@TMH
M;+;D4KJ@9NR]T]'% ]&)1U9VY-R_<!WJC<(0%[[7[02[P5$/5HKYFFFN "BX
M('X \V38)WZWZW5'P[.\!: ^3#5BQP'.B>\/O=X@<%/&#T;>,.C!G(&8?!=G
MN^@L1-$?C-P@](:#T(4 6RRJ!M4 KIO1TC:>N.\HV/W U<:(QST-Z!]HUJ7D
M?X%]].A<GJET3>4CB3:6K&A&-6),GJJP7ZC<X/BKEA@YK+%+%\QW>76]I"G*
MY)"VQMTXS[E<P/QQ)%Z3_F4 OX6$<#_KP!9B>AD6=PZYX 0@W!H24[,B&8CS
M#7[7:NI&BOMER"UG^1,D@=/G1$M>NGQBYMA!>;P\;?])KFIB7$U5@RB&A2B&
M_UP49QCV)XU8$K-FW;S;5_2\/*/W&KK;D3TOVV:JF')K=P/V"9D=G-/;TD.@
M,X5XHXYF"*PX^IA^-L?G6?KIRC.N'U@GY*':^?]*;>>SJG8V$7LBB/"_2J>)
M.O+119K,T6#LW/E^6EL^ IL-LHV=I2O9_A&DM88J:LL3NKF>@OYU1YF>#D;A
MRX5P)X.Y!)[=E_)S)!<5"0V\T:"32V@?-&YT1$)?Y)33S6#H#7O9[WEO (MG
MZ6;EF).UBWG[G[2VIM1^&(WM/]'8T??5V'V#GYIN%:EL*I9Z5:9@GDTT?">%
MD4FUQ8-W;PYQK#?P!%\_I<GGD@*>&@I&:RPF&-? TGF1OV1@!97BB7?]P;5Q
MK\U*\(2ZVLZGCOM*8XXJ;KOT!0<J<^F^4R$,#.GL8TYQM_@4-LF^ .VW9]_1
M(._0#X8(M@#3SN4 7NYT]FTJN[!J[;X'1<I"&[CEBE$H7=P SQ=*V=T%'E!\
M(!S_#5!+ P04    "   ,:):%M) SA\#   ;!P  &0   'AL+W=O<FMS:&5E
M=',O<VAE970R-RYX;6R55=%NVS84??=77*A!T0!J)%*R+;FV@21;L +)&C3I
M]C#L@98IBZA$JB15MW^_2TI68]0SMA>)Y+WG\!Q>\6JY5_JSJ3BW\*VII5D%
ME;7M(HI,4?&&F2O5<HF14NF&69SJ761:S=G6@YHZHG$\BQHF9+!>^K5'O5ZJ
MSM9"\D<-IFL:IK_?\%KM5P$)#@L?Q:ZR;B%:+UNVXT_<?FH?-<ZBD64K&BZ-
M4!(T+U?!-5G<I"[?)_PA^-Z\&(-SLE'JLYN\WZZ"V GB-2^L8V#X^LIO>5T[
M(I3Q9> ,QBT=\.7XP'[GO:.7#3/\5M5_BJVM5D$6P):7K*OM1[7_C0]^IHZO
M4+7Q3]@/N7$ 16>L:@8P*FB$[-_LVW ._P5 !P#UNON-O,I?F&7KI59[T"X;
MV=S 6_5H%">D*\J3U1@5B+/K>XZ6#+QY9IN:F\ME9)'4A:)B(+CI">B_$"3P
MH*2M#/PJMWQ[C(]0S*B('A3=T+.$#TQ?04)"H#&=GN%+1H>)YTO.._SK>F.L
MQH_@[U,>>XKT-(6[& O3LH*O OSR#==?>;!^_8K,XG=G!*:CP/0<^_JIOP^@
M2KCK;*<Y/ @IFJX!+QT>V7>\!=; )SQA#;\K^?:6R0(_9%<S^-!RS:R0.V!R
M"W="NE@/-:>LGA5SVNH@JQEDU5Y6>Y#5>5D2914O9*DC6>4@J^Z+P8QSBY4N
MJK'4L.>X!T9*56.K,(O)#V>#J\D18@870*<A25,<)&&<DN/X'&@2DFEV'(M]
M+ ,R#Z>$G(KE0-(P3U*@83Z;'W$F,9 DI#3&&*7IY+E"S:RTZ)\@*)M3>/TJ
MHX2^FSPKRVHHSYX<C;,P2_Q^"4DG]]R8!;R72,>-A3>0S,*<Y'")0Q+&V0PN
M!]J>IQ9L(VIA!9[H!1HB88[*+GJ)V>3^IZ2WV%&TQJU=4A[.<^J.,)PETY/)
MOJ0#@$QI2-RQQ>$T3_Z'##AU0Z(7#:OA>N?;LH%"==+VO6M<'3O_==_P?J3W
MOPTLSTY(@UI*A,97\VD NF_%_<2JUK>_C;+83/VPPK\7URX!XZ52]C!Q&XS_
MP_4_4$L#!!0    (   QHEKB,AC)A ,  ,$(   9    >&PO=V]R:W-H965T
M<R]S:&5E=#(X+GAM;(U6;8_:1A#^SJ\8.32ZDSALC TG DC<7:)6RBGH[M)^
MJ/IAL0>PLMYU=]<0^NL[7K\ B:']PKX]S\PSNS,>IGNIONDMHH'O*1=ZYFR-
MR2:NJZ,MIDSW98:"3M92I<S04FU<G2EDL26EW/4];^2F+!'.?&KWEFH^E;GA
MB<"E IVG*5.'!^1R/W,&3KWQDFRVIMAPY].,;? 5S==LJ6CE-E;B)$6A$RE
MX7KF+ :3A[# 6\#O">[UR1R*2%92?BL6O\4SQRL$(<?(%!88#3M\1,X+0R3C
M[\JFT[@LB*?SVOHG&SO%LF(:'R7_(XG-=N;<.Q#CFN7<O,C]KUC%8P5&DFO[
M"_L2&Q(XRK61:44F!6DBRI%]K^[AA'#O72#X%<&WNDM'5N43,VP^57(/JD"3
MM6)B0[5L$I>(XE%>C:+3A'AF_H0K S=O;,51WTY=0R:+ S>JZ \EW;] '\*S
M%&:KX:.(,3[GNR2ET>/7>A[\JP:?F>K#<- #W_/#*_:&37Q#:V]X+;ZG1$=<
MZEPA_+E8::,H%_YJ"[:T%;3;*NICHC,6X<RA M"H=NC,W[\;C+P/5Y0&C=+@
MFO7Y*]5;G',$N89"=9N^JQ;:]2T,T)U&V^92@8F8'$28KE#5NT&/4IEN*I)4
M;MI@3"HFG1^(/Y$ZBQTJ*EWXDAMMR&XB-M"RUWE#E<)GR01TB>CU_- [SCI/
MR-D!X[LGQ?9PA ["H.=Y'HVCWIA@+[B3?%>X>%08)X8./ L(QSW?#SMOTC .
M*Z0O%9;1)%KG3$1(86FC(>R/X1<(O<#Z'_5'M H&@25_%2R5RB3_4.AMW!OP
M>[XW@EL["^Y]N*T<=LFBW_."@&;!8- ;!\/_OKC'7"D4!K+")WV<Z,VY%)L[
M4T1O_7?A_;M[?^!_.,XZG\\A=R"DN(LJ4[6*6L-%=7 E6<,F6</_G:R?<E-4
M5KT5PPMF[$ ?;KJV*I=AJ1(1)1GC;5E]U55[5E<^=>-3G?FTUY/5/H$1E&E8
M2TX]2$\ZRQH:YPBKPTG.74C%GU+/7N[Y,X_:GJSU&<]HXP9P823X 485]N:9
M4>").=PV=70LDZH:ROQNWO]8;S6RVV"[336TY81[TE925!O;/#451"Y,V6&:
MW:8_+\JV=(27S9U"WB1" \<U4;W^F-Y<E0VS7!B9V2:UDH9:GIUNZ3\&J@)
MYVLI3;TH'#3_6N;_ E!+ P04    "   ,:):J/IKG. $   Z"P  &0   'AL
M+W=O<FMS:&5E=',O<VAE970R.2YX;6R]5DUO&S<0O>M7#-0DL(&UM-]:*;8
M6TZ: '5AV$I[*'J@=F=WB>R2*DE95G]]AUQ].774'HI>))([\_CF<3B<R[54
M7W6-:."Y;82^ZM?&+"?#H<YK;)D>R"4*^E)*U3)#4U4-]5(A*YQ3VPQ#WT^'
M+>.B/[UT:_=J>BE7IN$"[Q7H5=LRM;G!1JZO^D%_M_# J]K8A>'T<LDJ?$3S
M97FO:#;<HQ2\1:&Y%*"PO.I?!Y.;Q-H[@U\XKO71&&PD"RF_VLGGXJKO6T+8
M8&XL J._)YQATU@@HO''%K._W](Z'H]WZ!]=[!3+@FF<R>977ICZJI_UH<"2
MK1KS(->?<!N/(YC+1KM?6'>V\:@/^4H;V6Z=B4'+1??/GK<Z'#ED_G<<PJU#
MZ'AW&SF6M\RPZ:62:U#6FM#LP(7JO(D<%_90'HVBKYS\S/0!GU"L$!XPEY7@
M3JFS.5LTJ,\OAX9VL';#?(MVTZ&%WT&+X$X*4VOX( HL7OH/B=F>7KBC=Q.>
M!+QC:@!1X$'HA\D)O&@?;N3PHG\(MU2RA1EQ5906)+FI8>;$1@6_72^T6__]
M-0$Z_/AU?'N%)GK)<KSJTQW1J)ZP/WWW0Y#Z[T^PC_?LXU/HTUNN654IK)@[
M)UG"-I[7B)Z$>IWHO$82I5TRL8'BL!=JNGY'NN4-1V$T<&$DY/2]DHJ3D:F9
MH1NQY"1I39$9@A/,K!1ZP%JY$H;^10$KD:,R5##,QL:PP[:?<J9K**E2:&"*
MELJ2;B\6L-@ ):B0+<^=W6*E*2"MH:1SDDH/8%Y+C<=LK'_'E.Z+^HJT^79J
M-DOLF.2[#&CY\Z WKQ7BBPP&RK^\M@G8LPEHLS#NW<JF84K#/:K<PGTS[\VZ
M7>[<IGK2^R!051L/4#QQ)055-*+"1:D8I=DJW^I#;*SDVE &*HKU"=4&WD 8
M95XR\B$>PUL[#6,O'8<0)_"V]PE90XEK7;7,.6M@J62E6*LA2,>>'T80D1T$
M8]_+R"DBC-XCYBO%27GK)NF(%.3\B3><"7C'VN5[$J6E:^#P,M^S80<IH8PR
M+TM"-^[-I:&O;R#.1EX:9!#XOJ,7CV,OCM)N_A_K.:=3F_2^#!X'4&*!B@A4
M5B4GJ%-J[*7A0:E1[ 7C!!*KE//2AI+#A=W(_*7W*/6R=!=GZHV3J(OSLZ#C
M$.ZVO70(1YX_(G"R#Q,O3",[W,KRX\$LBB,O27T867DB0HZ#@#8@T]E!Y"".
M/3_)(+)&09 YR</X?Y=Y=Q?N^/.D-Z>7]X*TNJ"'#Q71U%93G[(J3B&..HG]
MU M(JC@D%A_Y,Q872\5S=$GKC\+N*&S*CL9IE[(SJ<V%?44+B'TO(?X9F:21
M1R%"$/W;F.%$,4WVQ30Y64P?J;\I5@W:$K2/_5IKNK,N27[B;$'7PE M>:V\
MG@3_?GDM276YYJ("8Q_9;3/$_W3E$P\%B1V(- <BM&SI[H_7/8O.Z!9S;!=T
MF;>K\:3WC=7?+ XGOMW,EI?,BX*81D&6>>,X.-@<LSBS^1_[(SBWP]A+,A_.
M>S]3"_DM_[,CMW.7,KXW)D?:((V]* U>/<GA43]#MZ1R79LF<'I"NM9FO[IO
M#*^[?NA@WG65)$+%A88&2W+U!R,Z-]5U:MW$R*7KCA;2T//OAC4UMZBL 7TO
MI32[B=U@WRY/_P)02P,$%     @  #&B6B,F_5@1 P  E08  !D   !X;"]W
M;W)K<VAE971S+W-H965T,S N>&ULA57+;MLP$+S[*Q8*6B1 JY?EQ(T?0)*Z
M: Y% \=I#T4/M+2RB%*D2E)Q\O==4H[BHHE[L?C8F9WEDN/I5NE?ID*T\% +
M:69!96US'D4FK[!F)E0-2MHIE:Z9I:G>1*;1R H/JD64QO%I5#,N@_G4K]WH
M^52U5G")-QI,6]=,/UZB4-M9D 1/"TN^J:Q;B.;3AFWP%NU=<Z-I%O4L!:]1
M&JXD:"QGP45R?IFY>!_PC>/6[(W!5;)6ZI>;7!>S(':"4&!N'0.CSSU>H1".
MB&3\WG$&?4H'W!\_L7_RM5,M:V;P2HGOO+#5+!@'4&#)6F&7:OL9=_6,'%^N
MA/&_L.UB,\J8M\:J>@>F><UE]V4/NW/8 XSC5P#I#I!ZW5TBK_(CLVP^U6H+
MVD43FQOX4CV:Q''IFG)K->URPMGYM<Q5C;!B#VC@>,76 LW)-+)$[0*B?$=S
MV=&DK] ,X8N2MC*PD 46?^,CDM3K2I]T7:8'";\P'<(P>0=IG(X.\ W[.H>>
M;_C?.N$C-[E0IM4(/R[6QFJZ&3]?*KECS%YF=*_EW#0LQUE S\&@OL=@_O8H
M.8TG!_1FO=[L$/M\49;H+RSL*5\RB[#$7,F<"\[<M7Y)]V'F"WI+^PR@2K 5
MPI6J&R8?WQZ-T^1L8L!89ENK]"-HE]8J'X6]+DN"_,ZQ6W>P-)XL5DL_2B8G
M0([A(;;2B%!W]P/=_0#J;E[U[04F"S?(@!M@AH""O,*<#U8>N7^SGI$#CW2H
MP6VOM->4)F$,;W8?'^ %HWD'DIR.2BZQ0,T$K%%BR2V<>L!I%[^SC _C,SJL
M32O\0='[@"0+Q_#FQ)>;I)/!XG?+[>-[YPL%4)_(*TUWJDDX(KYC&(49 09W
M,D=MR22]QD89[J.&X0<GT\4.7(=SC06W/E,2#EVF8])TYAB^TEEJR,*4 $,O
M<_%O+Y+8ITUCE_6E:QCM646->N,-T9#T5MK.-?K5WG,O.JMY#N\,FUJQX70J
M DN"QN'9* #=F6 WL:KQQK-6EFS,#ROZWT#M FB_5,H^35R"_I]H_@=02P,$
M%     @  #&B6B-:U'(7!0  O@T  !D   !X;"]W;W)K<VAE971S+W-H965T
M,S$N>&ULO5=;;]LV%'[WKSAPBRX!!%NB+I9R,>!D+1I@78,X[1Z&/=#2L:55
M(EV2JI/]^AU2MN.TKKMTW1X2D]3A=^[?D<Y64GW0):*!NZ86^KQ?&K,\&0YU
M7F+#]4 N4="3N50--[15BZ%>*N2%N]340^;[R;#AE>B/S]S9M1J?R=;4E<!K
M!;IM&J[N+["6J_-^T-\<W%2+TMB#X?ALR1<X1?-N>:UH-]RB%%6#0E=2@,+Y
M>7\2G%S$5MX)O*]PI7?68#V92?G!;JZ*\[YO#<(:<V,1./U\PDNL:PM$9GQ<
M8_:W*NW%W?4&_97SG7R9<8V7LOZM*DQYWD_[4."<M[6YD:O7N/;'&9C+6KO_
ML.ID8]*8M]K(9GV9]DTENE]^MX[#SH74_\H%MK[ G-V=(F?ES]SP\9F2*U!6
MFM#LPKGJ;I-QE;!)F1I%3RNZ9\93(_,/I:P+5/HG>/FQK<P]'-WR68WZ^&QH
M2(45'.9KN(L.CGT%+H0W4IA2PTM18/'X_I!,V]K'-O9=L(. ;[@:0!AXP'P6
M'\ +M_Z&#B]\BK^_2H/P^V2FC:(J^6.?VQUJM!_5=LZ)7O(<S_O4&AK5)^R/
M7SP+$O_T@,W1UN;H$/KX4C9+*5 8#7(.DSQOF[;F!@MX:TI48)\K+&VG?$+X
M16J]SX.#.O9[L*M*.E7Y(U4UJ0+NK*(\Y>4V4<!%81<15"*O6RH%H.LPES61
M0"46)[W;4B$^*I;/('K4=-12 BY++A9(0' K#:][WS+JR%IU;!7+!H$;^!ES
M;&8DMX:.X#D<09!X81K",6V2<-0=Q=XH2N"X=]DJ1>&&):I*_@,M)[VWWS1D
MAL2@2#R6UUSK:E[EW-*2AM!CH]!J]](X(GL"+PJRWJ21K4WX@SRY.U>R(1Y[
MBO]'P3$<,?J#R/,SBW\$219 =S)*8W+WY7Q.'&FS:/@=:GCQ+&4!.X4D#NU?
MS\6=R.AI02$%!.,4D6L9<ROFC0(*^M.3^%E]N72-/.9'+H-6!8OCS3KUHCBS
M^LCY6ZH[VR!<W#\.YG.(!@%1:EW;Z4#.XV=A4-C99R1L:]'%(+^'6\6%KET&
M85+\23S=N/[\C@Q5@A0@5X+Z0MLRSZ40ZYFUJDP)5S>7D*6C 4RI8VQNF'_J
M&"OM,A6<PE4'=6OM=A+!Z<"E?==[O%L2K+;^; -Q#WRY5/*NHOF&]3T%Q7\<
ME%;0J*^KO\@5:_7CL-B>?FC/5[Q2\)[7+=J+5\(@$8F!&Y*&UUB0T&1!3?^#
M E6TBGZ="0+O# 0,&L<F@V]R2_3?<4O8%2#SDJRKQC3PNR/J ==L_RNWV+Z(
M0]LCD1>G&7&-'\<_C%LV/&&U)*--J[O5%YP24'Z($(*.!D:^3S+?S2M$D<P"
M,2_P$TC2Z%_RR7HB1%X0C%S6F)<%R29OS+>N'9CC\7:.QP?G^+1[\;5!N<%E
M2P9PVU"TG9:<>F7?U#Z(N']J[V)37;@6,:XEN@8!W#-N'R8V66)G>C>K]>%)
MW7-774MU+D!76W#-JP*^/.JD=KR':R47BC<$1K49I13S,*8B9<3NS$L#.YA9
MZ*5AT'M/9&([WD9O^DX[@Z^G$PV1%?2IPEF60!13GP60>$F4K0LLC.DL=M"9
M%Y(.1@,BR=R![T6IOS>WPYUWZ@;5PGTY:"HK\J5[O=Z>;C].)MT[^8-X]V5#
MX5I4U(TUSNFJ/QA14E7WM=!MC%RZ-_29-/2^[Y8E?6"AL@+T?"Z)[M<;JV#[
MR3;^&U!+ P04    "   ,:):'\QSU^8"   M!@  &0   'AL+W=O<FMS:&5E
M=',O<VAE970S,BYX;6Q]54USVC 0O?,K=MQ.IYTA^)./4& &TJ3M(3,,D/30
MZ4'8B^V);%%)#DE_?5<R.*0E7/!*VO=VGU:[C'9"/J@,4<-3P4LU=C*MMT/7
M57&&!5,=L<623C9"%DS34J:NVDIDB045W T\K^<6+"^=R<CNS>5D)"K-\Q+G
M$E15%$P^SY"+W=CQG</&(D\S;3;<R6C+4ERBOMO.):W<AB7)"RQ5+DJ0N!D[
M4W\XBXR_=;C/<:>.;#!*UD(\F,7W9.QX)B'D&&O#P.CSB%?(N2&B-'[O.9TF
MI $>VP?V&ZN=M*R9PBO!?^2)SL;.P($$-ZSB>B%VWW"OIVOX8L&5_85=[=L+
M'(@KI46Q!U,&15[67_:TOX<CP,![ Q#L 8'-NPYDL_S"-)N,I-B!--[$9@PK
MU:(IN;PT15EJ2:<YX?1DJ47\<&%T)7 E"JJU8O:Z/J[8FJ/Z-'(UA3'.;KRG
MG-64P1N4(=R*4F<*KLL$D]=XE])K<@P..<Z"LX2W3'8@]-L0>$'W#%_8: XM
M7_B6YHQ)O)A9S7/V3$],PU1*5J9H[#8L,!9IF?^A\VDA*CK^.5TK+>D)_3IU
M'W6XZ'0XTU9#M64QCAWJ&X7R$9W)AW=^S_M\1DS4B(G.L4^6U*9)Q1'$!J8[
M)A,%7TF*_O?FZTS/<IW.=)4A; 2G[LW+%%@=8H<2(:WC0%))<Z3)46<2$8JZ
M_FCJ#U2].&O*!ZQ,C!$-6Z^SA>DC2AH#]1KH,2/<L%S"/>,5ME:6^/AAP?];
MK9=8C=6R44U$:*S6=;'EXIG0]OD?[BWP!VTOC,#WO7:_&\%[&/B=RY"^?K?7
M\7NM*Z:R"YI3FE/XQ?).03]L>_T!A%';ZUE U!G4@*#3O6RMA&8<@DN_[?L!
M^%'4'O@#.%5U]ZB%"Y2I'50*8O/ZZFYN=IM9.*U'P(M[/4A)>IJ7"CAN".IU
M^ET'9#V<ZH466SL0UD+3>+%F1O,<I7&@\XT0^K P 9I_B,E?4$L#!!0    (
M   QHEI(F<Z*+P,  &\'   9    >&PO=V]R:W-H965T<R]S:&5E=#,S+GAM
M;(U5;6_:,!#^SJ\X9=.T28RD@=". 1*TW59IG5!?M@_3/ICD(%8=.[6=4O[]
MS@ZD3*+1OH#/YWONN=>,-TH_F!S1PG,AI)D$N;7E* Q-FF/!3$^5*$FS4KI@
MED2]#DVID67>J!!A'$7#L&!<!M.QOUOHZ5A55G")"PVF*@JFMW,4:C,)3H+]
MQ0U?Y]9=A--QR=9XB_:^7&B2P@8EXP5*PY4$C:M),#L9S1/WWC_XR7%C#L[@
M(EDJ]>"$JVP21(X0"DRM0V#T]X3G*(0#(AJ/.\R@<>D,#\][]"\^=HIER0R>
M*_&+9S:?!&<!9+ABE; W:O,-=_%X@JD2QO_"IGX[' 205L:J8F=,# HNZW_V
MO,O#@<%9](I!O#.(/>_:D6=YP2R;CK7:@':O"<T=?*C>FLAQZ8IR:S5I.=G9
MZ2Q]K+CA=89D!A>4(V.YK33"^SNV%&@^C$-+GMS[,-VASFO4^!74/EPK:7,#
MES+#[%_[D!@V-.,]S7G<"GC-= _Z)UV(HSAIP>LW8?<]7O\5O'EEZ,88.%?%
MDDOFXC?P>[8T5E.C_#D6<HTX.([HAF=D2I;B)*#I,*B?,)B^>W,RC#ZW\!TT
M? =MZ-/;>F9 K6"A47#J!"<N*IWFU)-TR5.$F1 J];$<X]_JX3C_F8&2:>O<
MVARA/'#-&E^-=D\FI5SR#+77=KV.TEPRN:4Q3I6FEO"7*T48&R[7H\X/6C]N
M?$F E)7<,@%OH=_]=!IU%II6D+9;WY]([5K24K"0))US/Q^H/Q(O9@F52\OD
MFKNNI4[I1E'4N< GVCRE<XEI+I50ZRTD7G6G688@64&O';9U,J7YP4 _B3I?
ME<HV7 C7=_'II\[B:'R&> ZC[C 90$N=DZ;.R?_6^9+&L/!1W1M<50*^N]%T
M&C^SFA173;@P,P:M.5;V=H=W5 =L/%6U)['WQ/:>7A(+S'L"IMUQ5T,S:J_%
ML!?!%IDVQ\LQ:-1M)>DE4-1;Y>Y8IL.#)4@\UG[5&RI6)6V]#YO;YFLRJY?H
MR_/Z4T3;9LVIL@)79!KU3BF'NE[OM6!5Z5?J4ED*VA]S^B*B=@](OU+*[@7G
MH/G&3O\"4$L#!!0    (   QHEJE$D9M P,  -4&   9    >&PO=V]R:W-H
M965T<R]S:&5E=#,T+GAM;(U574_;,!1][Z^X"A,:4D<^^@FTE2@PC0>FBK+Q
M,.W!C6\;B\3.;(>R_?I=.VU6I-+Q$G_DWG//<:Y/1FNEGTR&:.&ER*49!YFU
MY7D8FC3#@IE35:*D-TNE"V9IJ5>A*34R[I.*/$RBJ!\63,A@,O)[,ST9J<KF
M0N),@ZF*@NG?4\S5>AS$P7;C7JPRZS;"R:AD*YRC_5;.-*W"!H6+ J412H+&
MY3BXC,^G71?O [X+7)N=.3@E"Z6>W.*6CX/($<(<4^L0& W/>(5Y[H"(QJ\-
M9M"4=(F[\RWZ9Z^=M"R8P2N5/PINLW$P#(#CDE6YO5?K+[C1TW-XJ<J-?\*Z
MCAUT D@K8U6Q228&A9#UR%XVY["3,(S>2$@V"8GG71?R+*^999.15FO0+IK0
MW,1+]=E$3DCW4>96TUM!>79RP[04<F5@AAKF&=,('Q_8(D=S,@HM%7!A8;H!
MF]9@R1M@';A3TF8&;B1'_CH_)&(-NV3+;IH<!+QC^A0Z<1N2*.D=P.LT:CL>
MK_-^M3\N%\9J:HZ?^_36<-W]<.["G)N2I3@.Z$88U,\83(Z/XGYT<8!LMR';
M/80^F=,%Y%6.H):PA_BM3/.*TR9<B[QRO0TWRR4UNXN?6Y4^P>6::6[VZ3I8
M>;^NAD))%$S=*<='PR2)+FYF<S^++T[:(!I>-D/@6V[8<#.>&_/<@&P%D*69
M0Q6*TSTOE;;(09B-48@_M%HX]SAO/60:\563M:A%*)MZI/512"JI*L,D-VW
MEQ1+N\.6T_TX\9WD'MW65[(\.D15('R I-\>]F(W&;0[\:#UZ*\S\D_L&36Y
M$\BJ6! 4\2<3$&F-:8!\SE@JZ/3R2F]E;]3$PW8OZKMAT!NTKO]S%G$TH-"S
M0[7]<=)YO+=Z/^ZXX:S;;TT];?I4)#(^[?;JH5^S(LCF37<[[.OA<,=J"M0K
M;Z@&4E5)6[M.L]MX]F5M5?_":\.G+[<2TD".2TJ-3@>] '1MHO7"JM(;UT)9
MLD$_S>B_@]H%T/NE4G:[< 6:/]GD+U!+ P04    "   ,:):LGEM*'(#  "A
M"0  &0   'AL+W=O<FMS:&5E=',O<VAE970S-2YX;6S%5MMNVS@0??=7#-1%
MT0))9,EVG+BV 3MIL $2-$BZW8=B'RAI;!&E2"U)1>G?[U"W*(GC8B_% H;%
M(6?.F4,.+_-2Z6\F1;3PD EI%EYJ;3[S?1.GF#%SI'*4-+)1.F.63+WU3:Z1
M)550)OQP.#SV,\:EMYQ7?3=Z.5>%%5SBC0939!G3W]<H5+GP J_MN.7;U+H.
M?SG/V1;OT/Z6WVBR_ XEX1E*PY4$C9N%MPIFZ['SKQR^<"Q-KPU.2:34-V=<
M)@MOZ!)"@;%U"(P^]WB&0C@@2N//!M/K*%U@O]VB7U3:24O$#)XI\3M/;+KP
M3CQ(<,,*86]5^2LV>B8.+U;"5/]0UK[38P_BPEB5-<&40<9E_64/S3ST DZ&
MKP2$34!8Y5T355F>,\N6<ZU*T,Z;T%RCDEI%4W)<ND6YLYI&.<79Y07C&KXP
M42"\^\PB@>;]W+<$[(;]N %9UR#A*R CN%;2I@8^R@23I_$^)=1E%;99K<.]
M@-=,'\$H.(!P&$[VX(TZE:,*;_1CE>?<Q$*90J.!KZO(6$V%\<<NS37D>#>D
MVRPSD[,8%Q[M!H/Z'KWEVS?!\?##GH3'7<+C?>C+.]I\22$0U 8NN&0RYDS
MI:1T"]H2UL U,B<B 6:A)X\*_1;C0FLNM[!FAIM=TO:3/Q+R'F'6(]PXPON6
MD-'N;"DC1PE,)F!3)">A8E9MOY+;E$O72SLQ5EG.Y'<7$"MIE. )LP0=,4',
M"%4]$XPF9P,;)>CL,+,!E46<=G4Q>%?AJ<(0G7D/5WB/ H+F&S;?$7Q6EJ1<
MM8G0;]W0W#F:P<H8(IL-+J5%6DD+FG(!4[+<P"$X8:0?<J6K\%_@[9N3, @_
M4"LXG;ZP;S3FC"> #W1N&JSG0I%L35(<T>"L%G^H2DF2!=^@F^="5RGE-!<Q
MI[ 6-0P/3L/I<_-3'_"*LX@+;BGLGZ@(Q\,7]BJ.=8$[5;10XI'U%5*AY/:0
M!K*.MB4)#J;!\3.KEO08T\<_QQBSB(:;M1___VM_$DY>V#]>^[\]4>'ID_:G
M?U%(HX-@.GYN_I>%%$R>FS^[C":C)^T]);3K3/9[UV:&>EL]#@R=2(6T]0W:
M]7;OCU5][3ZZUX\7.IFV-/<@<$.APZ/IQ -=/PAJPZJ\NH0C9>E*KYHIO:%0
M.P<:WRAE6\,1=*^RY5]02P,$%     @  #&B6I[;+0*; P  L0<  !D   !X
M;"]W;W)K<VAE971S+W-H965T,S8N>&ULA55+;^,V$+[K5PS419$ 0O2T9:6V
M@62SB^:P;1"G[:'H@99&%K$2Z26I.-M?WR$E>9TBZ[U()&?FFV\>'"X/4GW6
M#:*!EZX5>N4WQNROPU"7#79,7\D]"I+44G7,T%;M0KU7R"IGU+5A$D7SL&-<
M^.NE.WM0ZZ7L3<L%/BC0?=<Q]?466WE8^;$_'3SR76/L0;A>[MD.-VC^V#\H
MVH5'E(IW*#27 A36*_\FOK[-K+Y3^)/C09^LP4:RE?*SW=Q7*S^RA+#%TE@$
M1K]G?(]M:X&(QI<1TS^ZM(:GZPG]HXN=8MDRC>]E^Q>O3+/R%SY46+.^-8_R
M\"N.\<PL7BE;[;YP&'1S4BY[;60W&A.#CHOASU[&/)P8+*+O&"2C0>)X#XX<
MRSMFV'JIY &4U28TNW"A.FLBQX4MRL8HDG*R,^L-[BC%!N[%4&";J8LGMFU1
M7RY#0QZL7EB.:+<#6O(=M!0^26$:#1]$A=5K^Y"8'>DE$[W;Y"S@)Z:N((T#
M2*)D=@8O/8:;.KST!^$^XEXJP\4._K[9:J.H.?YY*]P!+7L;S5Z8:[UG):Y\
MNA$:U3/ZZY]_BN?1+V>X9D>NV3GT]88N8-6W"+*&;[R?4?08P(;O!*]YR>AP
M$GYXH:NJ40? 1'4\?5"RYN:MX,Z[?VH0](BA)K?ZQ.TDQ%=NI].]<PM,(3 -
MM6SI^NMK[ZE1B*^Z!*C&96.+[-DBVTIGWA@GO(-LD0?S>&%7119DZ=S;G.%P
M[=UQ11<>6K:5RA%2V#)#;FI%Y48HI38:XB(.BC2B?Q1$2>IM^FU)G&P?2*6=
MG30-*J@&N-$JCHA+ G$2!;,X\N[%*!X";UO;4!,5B"FD11&3=A%$1>;=(35)
MR8<[9BU89WOPW^%@%J04Y2R8Y9EW<RJ@ZG-AF-AQNI242XW$A)5?>G)=D0BV
MO:;2:4TDNRT7SDI#$61Y#HL@*6+B:9#Z\Y@FR(,L24F8)H5'_?',W8RE"4!X
MA()@V M%D ;Q+"+E*"Z\WUTZ_I=ON!CT+^$BOH1B/H<+B(,\B>'2^PWM5'%H
M[R"9!XM9;!<YQ9D[]1\@TK_M*V+!)_:#)+ \:=@*&H]*H2B_3K9# ^[H)=)A
M*[6M 455<;V7FD^Y'!)X]=;]#$_&:(=JYQX+F]9>F&&B'D^/[]'-,(:_J0^/
M&?7TCFA BS691E?YS <U/!##QLB]&\I;:6C$NV5#;RHJJT#R6DHS;:R#XRN]
M_@]02P,$%     @  #&B6@R)C.$6 P  C@L  !D   !X;"]W;W)K<VAE971S
M+W-H965T,S<N>&ULO59K;]HP%/TK5E9-G=0U(3S%(!*034-:6U34[<.T#R:Y
M)%:3.+,-=--^_/P(:6 TM!7:%_#KG'O/\2-WL*'LGL<  CVD2<:'5BQ$WK=M
M'L208GY)<\CDS)*R% O999'-<P8XU* TL5W'Z=@I)IGE#?38C'D#NA()R6#&
M$%^E*6:_QI#0S=!J6-N!6Q+%0@W8WB#'$<Q!W.4S)GMVR1*2%#).:(88+(?6
MJ-'W>VJ]7O"5P(97VD@I65!ZKSK3<&@Y*B%((!"* <N_-4P@21213.-GP6F5
M(16PVMZR?]+:I98%YC"AR3<2BGAH]2P4PA*O$G%+-Y^AT--6? %-N/Y%&[.V
MXU@H6'%!TP(L,TA)9O[Q0^%#!=!\"N 6 '</X+I/ )H%H/E<0*L M+0S1HKV
MP<<">P-&-XBIU9)--;29&BWEDTQM^UPP.4LD3GACS E'=(EF##AD NO=>(]&
M84A4$R=HFIG3I2;.?1"8)/S=P!8RNN*P@R+2V$1RGXC41%<T$S%''[,0PEV\
M+;,N4W>WJ8_=6L(KS"Y1LW&!7,=MH[NYC\[/WJ$Y1/)4B@/Y39Y/UZJA\>MI
M? @J-$56-6J;Y48U-6^S=J-N]C9JE(7H&HL5 S5UDP/3XQQ]_R+Q:"H@Y3\.
M[94)UCH<3+TU?9[C (96KL*Q-5C>VS>-CO/AD+&G)/-/1+9C<JLTN57'[EVO
MT@4P=1VHL3*+$#<G@1]RT;"U-9MZ8-=>8V"OJ]8<7>'79O1*O>U2;_N9>AGD
ME!W5VSZJ]^@*OS:C5^KME'H[M7IO1"SE3N7MR2*R2 "-. ?!+] U'+KJXUJV
ME]Z24Y+Y)R+;<;%;NMC]GT]1]Y0FGY+,/Q'9CLF]TN1>[5&=X)P(G)#?$").
MEV*#I;'D\>1B?7+1'W1VR%/#W:E>PX[C[-W5V@1>ZM6_$=U&KQ+2F&!7*I44
M6*0K/HX"NLJ$^?*7HZ:H'#?Z$UU\[8W+8G.D:RS[D<94JO(['A%Y[!)82DKG
MLBL?'&:J/],1--?UT((*65WI9BP+9F!J@9Q?4BJV'16@+,&]OU!+ P04
M"   ,:):$I*XOL\"  !K"   &0   'AL+W=O<FMS:&5E=',O<VAE970S."YX
M;6RM5EUOVC 4_2M65DVMQ)IO/KH0J26;MH=)%6VWAVD/)KD0JTY,;0/=OY_M
MA!1"0$SJ"_''/<?WG$NN$VT8?Q8Y@$2O!2W%V,JE7-[8MDAS*+"X9DLHU<Z<
M\0)+->4+6RPYX,R "FI[CM.W"TQ**X[,VCV/([:2E)1PSY%8%07F?^^ LLW8
M<JWMPI0L<JD7[#A:X@4\@'Q:WG,ULQN6C!10"L)*Q&$^MF[=FR34\2;@)X&-
MV!DCK63&V+.>?,_&EJ,3 @JIU Q8/=8P 4HUD4KCI>:TFB,U<'>\9?]JM"LM
M,RQ@PN@ODLE\; TME,$<KZB<LLTWJ/68!%-&A?E%FSK6L5"Z$I(5-5AE4)"R
M>N+7VH<=@!L< 7@UP#L7X-< _UQ 4 ,"XTPEQ?B08(GCB+,-XCI:L>F!,=.@
ME7Q2ZK(_2*YVB<+)> I"<I)*R- $BQQ]0E-(69D22K I#)M7&[BL([Z\K,@:
M4RBEZ)G5-H5D2.: 'IG$= OOG8F]3$!B0L652N3I(4&7%U?H I$2/>9L)11"
M1+94LG7R=EI+O*LD>D<D_L#\&OEN#WF.%W; )Z?A":0-/.B )^>?WH+;JE9-
MP;RF8)[A\X_P'2T&^GT[4V:J%^E/ET<5:]#-JIO+C5CB%,:6ZAX"^!JL^.,'
MM^]\[G+L/<F2=R+;<]-OW/1/L;^YF>H!O+G996%%U3=4NIVNXW#@#B-[O6O-
M85 PZCO[0<EAD-\?^DW0GI2@D1*<E++S*FDQ70(J@G#G6'?H#X*6@N @.=<?
MAH.6A$.ND=OO5A V"L*3"IJ.D9J.T2Y)U3'XODPD<K8I=8?0/4=U+L$HR;#>
M%E(]"O-JU)QHKFZYSM*&!YJ]P!EY+6=.IO^_?_O#(X-P-&HY:.]T=GT-JVZR
M(*5 %.8*YEP/% NOKK9J(MG2-/L9D^KJ,,-<?0T UP%J?\Z8W$[T_=%\7\3_
M %!+ P04    "   ,:):4'X$#X("  "$!@  &0   'AL+W=O<FMS:&5E=',O
M<VAE970S.2YX;6RM5<MNVS 0_!5"#8H$2**WTJ2R@,1&T1Y:!''3'HH>:&EM
M$Z%(E:0?_?LN*4504MGHH1>)CYW1S%*[S'=2/>DU@"'[F@L]\=;&-#>^K\LU
MU%1?R@8$[BREJJG!J5KYNE% *P>JN1\%0>;7E FOR-W:O2IRN3&<";A71&_J
MFJK?=\#E;N*%WO/" UNMC5WPB[RA*YB#>6SN%<[\GJ5B-0C-I" *EA/O-KR9
MIC;>!7QCL-.#,;%.%E(^V<FG:N(%5A!P*(UEH/C:PA0XMT0HXU?'Z?6?M,#A
M^)G]@_..7A94PU3R[ZPRZXGWSB,5+.F&FP>Y^PB='R>PE%R[)]EUL8%'RHTV
MLN[ J*!FHGW3?9>' 2!,#@"B#A#]*R#N +$SVBISMF;4T")7<D>4C48V.W"Y
M<6ATPX0]Q;E1N,L09XJI%$9A+LD#E,"V=,%!GY,O^/M<D'E[LD0NR>&PTQD8
MRK@^0\#C?$9.3\[("6&"?%W+C::BTKEO4*C]G%]VHNY:4=$!49^INB1Q>$ZB
M($I'X-/C\!F4/3QY"?<Q/7V.HCY'D>.+#_ -/),?MPOM,O%SS%;+DXSSV(*\
MT0TM8>)AQ6E06_"*MV_"+'@_9O(_D;VP'/>6XV/LQ1WC'"J"QT<6.+3>Q_RV
M))DCL?UB6T1)E*51[F^'3D;"LCBS9[,=T9CT&I.C&F\YMB J2B#8S CL&^P,
MJ+E44#%#N-0:1O^]EC4=J+G(DNOPE>:QJ*L@')><]I+3HY+[,E+#,A)@QG2F
M?V<MSL+LM="1L#2[CN)72OU!C[#]&6MLQ80F')8(#"ZOD$>U/:^=&-FXMK&0
M!IN0&Z[QF@!E W!_*:5YGMA.U%\\Q1]02P,$%     @  #&B6GM4^69;!
MD@T  !D   !X;"]W;W)K<VAE971S+W-H965T-# N>&ULM5=M;]LV$/XK!RT8
M6L"Q+,FOF6T@<=:N U($R;I]"/:!ELX648KT2-JN]^MWI!35=F2G ]HOMD3=
M\_">X_&.'&^5_FQR1 M?"B'-),BM75V%H4ES+)AIJQ5*^K)0NF"67O4R-"N-
M+/.@0H1QI],/"\9E,!W[L7L]':NU%5SBO0:S+@JF=S<HU'821,'SP -?YM8-
MA-/QBBWQ$>VGU;VFM[!FR7B!TG E0>-B$EQ'5[<C9^\-_N2X-7O/X)3,E?KL
M7CYDDZ#C'$*!J74,C/XV.$,A'!&Y\4_%&=13.N#^\S/[.Z^=M,R9P9D2?_',
MYI-@&$"&"[86]D%M?\-*3\_QI4H8_PO;RK830+HV5A45F#PHN"S_V9<J#GN
M*#D!B"M ? SHG0 D%2 Y!G1/ +H5H.LC4TKQ<;AEEDW'6FU!.VMB<P\^F!Y-
M\KETR_YH-7WEA+/3F9)64_#A 5/D&S87:%KPD?+M\K',!% +]U')E O._&+1
MR T7 C-H@L.C$AE8!7>?WL$'F8IUQN7RE,4,KJ7C$2X3B'&A50$S+QRU 9KM
M!G,F%FY2,G_OS?>Y/BI[&O[F%BWCPKR%2_CT> MO+M["!7 )?^1J;9C,S#BT
M%$87C#"M0C8K0Q:?"%D"=Z0Z-_"KS# [Q(<4_GH-XN<UF,5G">^8;D,2M2#N
MQ+T&?VZ_'=X]XTY2IT3B^9(3?/O!?;J>&[_ ?S?%J>3I-O.X@G5E5BS%24 5
MR:#>8##]^:>HW_FE2>1W(CN0W*TE=\^Q3V]PR:5T63IG@LD4&QR\.4_Q%#6&
MJ 3U/<B5X,TT[HWZ_7&XV=?>8!4EG;BV.A#5JT7USHLJMZC>6T[C]EVVUDZI
MS1%6J+G*FL2>IWZ*&\66H-Z>C"A.^L/>D=H&LR1)1L-FN?U:;O^L3U4-H/ID
MRBJ0UE7@FQ2?9R?%K:>D477_A9S+*!IV!_&1[":[>#1T>[9)]Z#6/3CK&56A
M5Q+W//ZIVZAJ\"(EDR@:C(XTO;2*N\-!OUG1,#@:&-421Z_M+2K8"//C;6HH
MNWTYD!;F9;JGSQUI/^]MSBQL4=/Z:]QP*OUB5VX&:@%T3"!;M93\7\+/=SY/
M9JI8,;F#^=I"SC*0U&7FB)+X#UK-UR1CQK6HWYE<NZ9957//[^HRM,@ALT)_
MS!&[-M"IQ4]D<XT(1=E1T'44H(*>YG5#J"E:!XXYE[6SEM2KN5S0^<T[< &]
M=DPG!2'\L8JP%Y"T^_7(H1\MUPNY-9 RDT-)XG71N5)3LZ=0^Y,9MQRK+\X)
MPP2ZR<[$_,<J[+U0./J^"M.ZFKRB<R^W?$*YA'')LD-G5G#K4J4\ZKQO^RS&
M@PW[_U/XA^3MB14Y3MNF7AONG3Z)<>E/\11OM9:V;,'U:'U1N/'GXZ/Q&5T@
MHH;QZ^'5;-@T/KJ:^0M'^'7:\K9":JA2&!"X(!<Z[0%575W> ,H7JU;^3#Q7
MEL+@'W.Z-*%V!O1]H91]?G$3U->PZ7]02P,$%     @  #&B6JII!9RZ @
MD08  !D   !X;"]W;W)K<VAE971S+W-H965T-#$N>&ULK55=;]HP%/TK5UDU
MM5)'((%NZR 2T'7K Q4JZO8P[<$D-\2J8S/;0/?O=^V$-.V@VL->$G_<<WS/
M\<W-<*?T@RD0+3R60II14%B[O@Q#DQ98,M-1:Y2TDRM=,DM3O0K-6B/+/*@4
M8=3M7H0EXS)(AGYMKI.AVEC!)<XUF$U9,OU[@D+M1D$OV"_<\55AW4*8#-=L
MA0NT]^NYIEG8L&2\1&FXDJ Q'P7CWN6T[^)]P#>..],:@U.R5.K!36ZR4=!U
M":' U#H&1J\M3E$(1T1I_*HY@^9(!VR/]^S77CMI63*#4R6^\\P6H^!# !GF
M;"/LG=I]Q5K/P/&E2AC_A%T=VPT@W1BKRAI,&91<5F_V6/O0 A#/84!4 Z*7
M@/X10%P#8B^TRLS+NF*6)4.M=J!=-+&Y@??&HTD-E^X6%U;3+B><3:9*6DU>
MPAVFR+=L*="<PRV5SSM85#<+*G>[2J9<<.;-IY4)%P(S.(2'A1(96 6S^VNX
MD:G89%RNCD5,82P=CW W2XRY5B5,O7+4!NBT"19,Y.Y0"O_BP]M<M\H>AY_.
MF49I"[0\9>(,3J_0,B[,&>F[7US!Z<D9G "7,",]),T,0TNV.G/"M+9P4ED8
M';$PAAF94!CX+#/,GN-#NH[F3J+]G4RB5PEG3'<@[IU#U(T&!_*9_CN\_THZ
M<5,BL>>+C_"UO?XQ7AI_WS\/^53Q] _SN'YT:=8LQ5% #<>@WF*0O'W3N^A^
M.B3R/Y$]D]QO)/=?8T_F6J6(F:FJR3"!KOJ65<FG^Y+73\8<<J,ZXJ,_PC73
M;3+H1,-PVQ;Y=TS<N6ABJMS#UM=--;WR3<]0&AMIJZ)J5JN^.J&^ZOO/BW7J
MMV/?9L(GFJI94\FLN#0@,"?*;N<]=2M=-<!J8M7:]Y"ELO1A^6%!_PS4+H#V
M<Z7L?N(.:/Y"R1]02P,$%     @  #&B6MR),]:P!   P@T  !D   !X;"]W
M;W)K<VAE971S+W-H965T-#(N>&ULM5??;]LV$/Y7"#4H6L"U+,D_$]M [*Q=
M!Z0(DF5["/I 26>+*$5Z)&W'^^MWI&1%=F2G#]V++9+W'>\['N^.XZU4/W0&
M8,ASSH6>>)DQJTO?UTD&.=5MN0*!*PNI<FIPJ):^7BF@J0/EW \[G;Z?4R:\
MZ=C-W:GI6*X-9P+N%-'K/*=J-P,NMQ,O\/83]VR9&3OA3\<KNH0',(^K.X4C
MO]*2LAR$9E(0!8N)=QU<WHRLO!/XB\%6U[Z)91)+^<,.OJ83KV,- @Z)L1HH
M_FU@#IQ;16C&/Z5.K]K2 NO?>^V?'7?D$E,-<\G_9JG))M[0(RDLZ)J;>[G]
M'4H^/:LOD5R[7[(M93L>2=;:R+P$HP4Y$\4_?2[]4 ,$T0E 6 +"8T#O!" J
M =$QH'L"T"T!7>>9@HKSPPTU=#I6<DN4E49M]L,YTZ&1/A/VV!^,PE6&.#.=
M2V$4.I_<0P)L0V,.ND6^8;Q](@]%*!"YL*M2)(PSZDX+9^949P2]71Z@)@LE
M<S)W%H/25F3&<#4E35N0.P4;)M>:[\B#Y"DQDMP^?OY"OHJ$KU,FEI5$L5['
M7@L[SIDQ5"30:,Q>G16M+Z(YL[4AWZ0I-<#+UA]NP%#&]4>D_OAP0SY<?"07
MA GR9X9F4)'JL6_0Y=9Q?E*Z=UZX-SSAWHC<(OM,D]]$"NDAWL>CJLXKW)_7
M/#RK\):J-HF"%@D[8:_!GIN?AW?/F!-5X1,Y?=$)??5C>;J.M3OH[TU^*O1T
MF_78Y':I5S2!B8?92X/:@#=]_R[H=ZZ:2/XB90>4NQ7E[CGMTQDLF1 V0F/*
M;0 V&#@[K^(I:'11 >H[D$W7FVD81=%H[&_JW!ND@L&H7TD=D.I5I'IG+7IU
MD9/J(J=K9<F:#,@*%)-I$]_SVI_"[ZVGJ)%S >S5V 3!L#L(CT@WB(6CH0WA
M)M;]BG7_K%TO2>0E8_P4W?-J3U#MO^+P*4 6@\X1UR:YL#<<C)K)#BJR@[-6
M809Z(VC/XY^ZC:P&K\-Q..P&1YP:I'J#FM0!HZ%W-#&J*([>NE>8K('$QU=4
M8X?B4H$P)+'E(*G*P5&T8W&+(:-\8<N*"PALK4A<5+)D7\E4+>V9C!JR!87Q
M\E+3M*U96#*P!4%9N13L7\3'.Q=7<YFOJ-B1&"M11E,BL!K% +:-.BI)U-71
M/ZA8VSI<9GVGU^9OTD*$7H%KG?BN3; 3<AN83 &0O*@\8"L/P<2?9%7AJ%2T
M#@RRIBHK+;#^,[' GM 9<$%Z[1"[#\Y=JX;8"Q*U^]7,H1TM6S.9T86G"R7.
MR]BK*NP?\%A<M\<,@W+%&J$I=[7\C*__7X:]5PQ'OY9A4B79-WC68LH%D@T4
M&R0[,*]BI.TB'@XNMR84H<RU4BB)4;2BRMA-W[\;AF'GZCI)U!I7X!F?#]K*
M(V.)-BJ\"DK9:X*M'EKH&#A0<&7O1LV7=C887&G+ *UD*;56E180UY'J=E.]
M]6O=*MZYI>OZK9JU,$49KF:KA\7,]=-'\W-\< 0-\]?#R_FP:7YT.7</%/]E
MV^)U@[&#&4,3#@LTH=,>8/95Q8NA&!BY<CUT+ TF"O>9X2,+E!7 ]8649C^P
M&U3/MNE_4$L#!!0    (   QHEK.H&<_L 0  *L.   9    >&PO=V]R:W-H
M965T<R]S:&5E=#0S+GAM;*U746_B.!#^*U9VM>I*O88D!-J4(A4HE--V5;77
MNX?J'DPR$&L3F[4-M/?K;^RD%*C+L:>^0&S/]\UX9NP9=U9"_E Y@"9/9<'5
MA9=K/4]\7Z4YE%2=B#EP7)D*65*-0SGSU5P"S2RH+/RPT6CY)67<ZW;LW*WL
M=L1"%XS#K21J4994/O>@$*L++_!>)N[8+-=FPN]VYG0&]Z ?YK<21_Z:)6,E
M<,4$)Q*F%]YED(S;1MX*_,E@I3:^B=G)1(@?9C#.+KR&,0@*2+5AH/BWA#X4
MA2%",W[6G-Y:I0%N?K^P#^W><2\3JJ OBK]8IO,+[]0C&4SIHM!W8G4-]7YB
MPY>*0ME?LJIE&QY)%TJ+L@:C!27CU3]]JOVP 4 >-R"L >$N('H'$-6 :!?0
M? ?0K '-0S7$-2 ^5$.K!K0.U="N >U#-9S6@--#-9S5@#.;#E7\;/ '5--N
M1XH5D48:V<R'S2"+QI@S;G+]7DM<98C3W;[@6F+&D3M(@2WII !U3+[C(?N-
MW%?Y3\34K J>LH)1FZ(XTZ<J)YAB==8J,I6B)'UK,4AE1'H,5S/B4D%N)2R9
M6*CBF=R+(B-:D)N'X8B,>5HL,L9G:XEJ?1-[R<VX9%I3GH+3F!<Z([JYB.;T
M%II\%[IF@%?51[=4 M<Y:);2XBLY&H"FK%!?T14/]P-R]/DK^4P8)W_D:!;E
MF>KX&D-@'.FGM;M[E;O#=]P=D1OT1J[(%<\@V\;[&+IU_,*7^/7"O80W5)Z0
M*#@F82.,'?8,#H<W'?#A?O@ TKWPT7[X8_BW W1]N,[( 1__HLXMMT?K8Q-9
MEN@=ELLT%0NNS5$1VIR8;X)BVF%2D"'CF)8F@U]SECQ^0P(RUE JUY9[E;:F
M6YNI=XF:TQ0N/"QH"N02O.Z73T&K<>X*^4>2#3^2[/J#R+9"UER'K+F/O7LK
M19I"5E]4BA;VYIA4=Y3<N%XF>$%PO"">\1*4.Y>$*W:5VI95:UJ+93>.&XV.
MO]R,R5NAZ&Q7:+AW [_JZP\BV_)UO/9UO-?7]^]ZU^7 ^(UOPM/39K#MG/Y^
MC8^!ZUP-'-1Q>Y?ZZO]0#QW4412=;5-?.Z2"]EEK+;7EWI:W,]%>^[O]7R9B
M50("W);."2U,9<3[2 (6+%-1,0I4D3F5VL3ERZ?3,&R<XRTF%[@"3]@Z*ZCN
M+X$54&+K(4TQ)%CQ,8A,,U 6%)P3K/\H@A6UG%/^;&:#]KDBV" H4;",FN-2
M6T!L8Z).K'$3F#'.M^R38),/]:2F2*?K(FW/:/K:3'!$Y[28&N-ML<8N_R6[
MTI?^8O,0ZYQJL@+<__RUTU"FDS![S' A%3/._C&V/F_NQQ[_G&;V"I@ \#=W
M@'$DFO$[Y0O3'=6UU_*:,DB.$:'F8+OXXOG$=9S\C88--SBSW;YQ(=84VRMN
M3%<OBF&4C&Q?O#O?3$9-Q_QUE(Q=\I?M^F6R,]\+DW[HF@^2J\ Q/PB3*Y?\
M,$Y&L<L>?!&Y>*[C9.R4;R9CU[XN6\FXY=(;)",7/[[$+JV=_JN?JV<<MCZ8
MCXH4,$6?-T[:>%1E]32J!EK,;=\\$1K3T'[F^)H$:01P?2JP]-<#HV#]/NW^
M"U!+ P04    "   ,:):1 (+.AT#  "L"@  &0   'AL+W=O<FMS:&5E=',O
M<VAE970T-"YX;6RU5FUOVC 0_BNGK)I:J2.\LW80J9!UJS0FU*K;AVD?3'(0
MJX[-; /MO]\Y"2FT*6HG]@5LYY['=X]]Y^NOE;XS":*%^U1(,_ 2:Q?GOF^B
M!%-F:FJ!DK[,E$Z9I:F>^V:AD<49*!5^LU[O^BGCT@OZV=I$!WVUM()+G&@P
MRS1E^F&(0JT'7L/;+%SS>6+=@A_T%VR.-VAO%Q--,[]DB7F*TG E0>-LX%TT
MSL.>L\\,?G!<FZTQN$BF2MVYR54\\.K.(1086<? Z&^%(Q3"$9$;?PI.K]S2
M ;?'&_;++':*9<H,CI3XR6.;#+R/'L0X8TMAK]7Z*Q;Q=!Q?I(3)?F%=V-8]
MB);&JK0 DP<IE_D_NR]TV (03S6@60":3P'M%P"M M!Z+:!= -J9,GDHF0XA
MLRSH:[4&[:R)S0TR,3,TA<^E._8;J^DK)YP-1DI:3>+#-4;(5VPJT)S"=[IO
M'^ BCKD['";@2N8WS!W5<8B6<6%.R.3V)H3CHQ,X BYAS(4@ ]/W+7GF^/VH
M\&*8>]%\P8L6C,F/Q,!G&6.\B_<IHC*LYB:L87,OX9CI&K0:I]"L-SL5_HQ>
M#V]7P,/]\!"CE^ [T;3*0VIE?*T7^"ZY9#+B<KYU2J<P8<9"N$3X]8WLX<IB
M:GY7:9^3MZO)75TY-PL6X<"CPF%0K] +WK]K=.N?JH0[)%EX(+(=4=NEJ.U]
M[,$-$PAJ!E.ZM1A#M$D$_9@(P%*UE+9*TYS[+.-VI745-.JU7M]?;6OUW*A7
MZ^S:A'N=_$<).J4$G;T2C.D&H=Y.?9@L=910'86+N4:D^FZI(-D$QK>77V#(
MY%V5&'MW>>L%.R19>""R'76[I;K=_YFUW4.*>DBR\$!D.Z+V2E%[>Z_LB)F$
M<E6XOH&R5BH+#^B2-N76+= SM9/!1HFX2MW>\_Q]FIJCO9Z\5;3G&_9J9^6&
MN1;^UCN>HIYG_9"A<*D(Y6]?N9JW7,/&^2AK39ZL4RMVD74@_B--WL?1RS;G
MTH# &5%2R:(,T7EOE$^L6F3=PE19ZCVR84+M)&IG0-]G2MG-Q&U0-JC!7U!+
M P04    "   ,:):\?0^<%@"   ""   &0   'AL+W=O<FMS:&5E=',O<VAE
M970T-2YX;6RUE6UKVS 0Q[^*\&!LT,4/>6H[Q]"TE!4Z%EJVO1A[H=B71%0/
MGJ0T[;??24Y$!HG&!GEC2_+=7[\[G77E1NDGLP*PY$5P:2;)RMKV,DU-O0)!
M34^U(/'+0FE!+4[U,C6M!MIX)\'3(LM&J:!,)E7IUV:Z*M7:<B9AIHE9"T'U
MZQ2XVDR2/-DM/+#ERKJ%M"I;NH1'L%_;F<99&E0:)D :IB31L)@D5_GE],+9
M>X-O##9F;TQ<)'.EGMSDKIDDF0,"#K5U"A1?SW -G#LAQ/BUU4S"ELYQ?[Q3
MO_6Q8RQS:N!:\>^LL:M)<IZ0!A9TS>V#VGR";3Q#IU<K;OR3;#K;09&0>FVL
M$EMG)!!,=F_ZLLW#GD,^..)0;!T*S]UMY"EOJ*55J=6&:&>-:F[@0_7>",>D
M.Y1'J_$K0S];W0.&9,@'<M4TS.6)<G(GN\-V67MW Y8R;MZ7J<7MG%-:;Z6G
MG71Q1/HSU3W2S\](D17#/]U3I RH14 MO-[@F!Z33*S%(9"HHZOK2]/2&B8)
M%JX!_0Q)]?9-/LH^1K#Z :OOU?M',V@, /&))#=@:LU:G[H?]VA)[BP(\_,0
M=/\$T(, /8CF\DL+&@]8+@GW!7"&/YC[A<,*L: /ICJNFY-7H#H". R PZC0
M+9-4UO#/>''5O^*- MXH7HOTY5@M1AW_\UC' 6M\FEH<GP#Z/$"?GZ@6X[KY
MP)^VB2!>!,2+DU1C7#4&F.Y=Z:X[XF6Z9-+@?@O4RGIC+'3==9QN8E7K;_FY
MLM@S_'"%31JT,\#O"Z7L;N(:1VC[U6]02P,$%     @  #&B6C9T_;54!
MAA4  !D   !X;"]W;W)K<VAE971S+W-H965T-#8N>&ULM9A;;]LV%(#_"J$5
M0PLLD4C=,]M ZR!8@78+FF9[&/9 R[1-5!(]DH[;?S]24B1%8AA'F%]B77AX
MSD==OA/-CHQ_$SM")/A>Y*68.SLI]U>N*[(=*;"X9'M2JC,;Q@LLU2[?NF+/
M"5Y7047N(L^+W +3TEG,JF.W?#%C!YG3DMQR( Y%@?F/#R1GQ[D#G<<#7^AV
M)_4!=S';XRVY(_)^?\O5GMO.LJ8%*05E)>!D,W?>PZLE"G1 ->)/2HZBMPTT
MRHJQ;WKGXWKN>+HBDI-,ZBFP^GD@2Y+G>B95Q[_-I$Z;4P?VMQ]GOZG@%<P*
M"[)D^5]T+7=S)W' FFSP(9=?V/$WT@"%>KZ,Y:+Z"X[-6,\!V4%(5C3!JH*"
MEO4O_MXL1"\ !L\$H"8 G1K@-P%^!5I75F%=8XD7,\Z.@.O1:C:]4:U-%:UH
M:*DOXYWDZBQ5<7+QB:@U$. "W-77$; -N#G( R?@,RUI<2A -03<XA_JZDD!
M[LLUX>!W5EXL<9FI]<>KG( _]H1C2<LMP.4:W-!2GP/-[&^OB<0T%^]4GON[
M:_#VS3OP!M 2?-VQ@U !8N9*!:-+<K.F\ ]UX>B9PC]C?@E\^ M '@H-X4M[
M^#7)VO#@:;BKEK!=1]2N(ZKF\^WK^/?[E9!<W9O_F(CJ*0+S%/J!O1)[G)&Y
MHYY(0?@#<18__P0C[U<3W_\TV1-:OZ7U;;/KQ<]VC\L7F5#K^*B*UZ^2AP4*
M8:!6^J'/8,TRD2%H&8+3&6(30QT?]AE\&"8#!FN6B0QARQ">PN!5#(F)(1PQ
MP#B$<,!@S3*1(6H9HM,94A-#-&8(4G]X+UFS3&2(6X;XY'O)]TP,\9C!1\@;
M,%BS3&1(6H;$RO!U1U0?L)&$F^I/QO7#((G1 ,":8B) V@*D=@ F<0XVM;R*
M1EYY):]](R\363I^RKTD\=,!F37W1#+H=9;VK&R?B!!7X&.IK@X1TFA+;\1Q
MX4<I''+8$TT%Z;4;\(2+5%^5G.(5S:FDQ.Q_:'AWP73TT-@S3B7JQ ^MIJW-
MWV=134YVX%S=;T8J-*9*XW3X(#7#G@C4BU'WXGY:;2=N:#>WJ=I2]7*VBOUQ
MQ2&":"A"X[@P]<-G:NY$#5]A:F.W <>J]KU@:#E[FJDW2N=J>)*L+0T''-O:
MA'$.6\-.U_ 5OC;V'' L;!/&.80-.V/#DY1M:3O@V-DHC>(AQCF<#3MI0[NU
M7^X\X%C="*%A]V1/,Q6C4S=\P=W6Y@..'3V2P#G\C#H_([N?)_8>:"QM&/AP
M>''LR:?"=<Y&=F>_W'R@L:HOH)=$0XYSF!KU_D6WF_H5O0<R6%KUZT/EV1-.
M!>IDCEXO<XO(T5C0*.KIN6$RC8+(+''421S9)3ZA\6AF[/= T%,-Q;!@PS"H
M2AY4[/8^DNDOE.K-N:6E4/?#1L5YE[$BYO5'OWI'LGWUW6S%I&1%M;DC>$VX
M'J#.;QB3CSOZ4US[Z77Q'U!+ P04    "   ,:):P4E$.>P#   ]$0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970T-RYX;6RU6%%OVS80_BN$5@PM,$>B+,E.
M:AM([ T+D&)!TJP/11]HZ6P+E4B/I.QVOWZDI,B2Q7 -H+[8(G7W\?O(XQVI
MV9'QKV('(-&W/*-B[NRDW%^YKHAWD!-QP?9 U9L-XSF1JLFWKMAS($GIE&>N
M[WF1FY.4.HM9V7?/%S-6R"RE<,^1*/*<\.\WD+'CW,'.<\=#NMU)W>$N9GNR
MA4>03_M[KEIN@Y*D.5"1,HHX;.;.-;Y:XJEV*"W^3N$H6L](2UDS]E4W;I.Y
MXVE&D$$L-011?P=80I9I),7CGQK4:<;4CNWG9_0_2O%*S)H(6++L4YK(W=R9
M.BB!#2DR^<".?T(M*-1X,<M$^8N.E6UXZ:"X$)+EM;-BD*>T^B??ZHEH.2@<
MLX-?._CG#M$+#N/:85P*K9B5LE9$DL6,LR/BVEJAZ8=R;DIOI2:E>AD?)5=O
M4^4G%RM82S1"CRH\DB(#Q#:H['J[ DG23+Q3+Y\>5^CMFW?H#4HI^KACA2 T
M$3-7JO$UBAO78]U48_DOC#5&'QB5.X%^IPDD!O^EW1_[%@!7"6_4^\_J;WPK
MX@?"+] 8_X9\SP]-A.SN*X@;]\!"9]PLQKC$&]L6XY8*R0NU4R3Z?*<,T*V$
M7'PQ37>%%IC1= *X$GL2P]Q1.UP /X"S^/47''GO35(' NL(#QKA@0U]<7T
MKI*&TBY!H4OT0"28%%<PV"MQ=(HZ++P++YS,W$-;B]DLBAJS#LNP81E:6?Y5
M2"%5Z*=TBVY(1F@,: TJE8)*'&KE4B&*LC-F0AKW1X4?M6B%7N"'WAG]OEF
M U]'J(E^U-"/K/2?*,D9E^F_D/PHWPHP;!$9^;X7G=$U6053W\QVTK"=6-DN
M"\[U'MAKRBK?J\24,;H=J0#)2_HFOI,>D_.IM5ET>$X;GE,KS[L.*94M*:.C
MN")OHCCM$0@]WPN",YY]LP#C23 VD[ULR%Y:R7YDDF0F5I<_QJIO9F.%O5,1
M\NR\]/S=,4*-1<7J^]HT-Q1:5VFKW.)!4WP--Y3X@="ZXOV3>/\G)]!Z@'8$
MJ@-K/X/^OUU7PJE"8VL=5.N7D>^0C%:<')$]; >MSD.A=66?ZC,.A@U;:[U_
MM?B!T+KB3V4?_^RZ7P_0#D<<!I[7"UN3731Y,6Q/I1_;:_\#'%AVT *6')+4
M6)GL$*]>LX'0NH)/IP<\&39@K:>15XL?"*TK_G0DP?8SR0 !.^T=07'H&0*V
M;Q=.^B=5MW5!S8%ORWN[4,,75%9WU::W^39P7=Z(W9-Y]6%!7=FV*14H@XUR
M]2XF:K/PZJY>-23;E]?=-9/J\EP^[H DP+6!>K]A3#XW] #-%Y/%?U!+ P04
M    "   ,:):EQZQ1'8#   Z#0  &0   'AL+W=O<FMS:&5E=',O<VAE970T
M."YX;6RM5VUOVC 0_BNG;)HVJ6M>@-!V$*F%54/:I*I5MP_3/ICD &N)S6P#
MG;0?OW," =K4VJKP@=C.W7/WG,_GRV CU4^]0#3P4.1"#[V%,<L+W]?I @NF
M3^42!;V9254P0U,U]_52(<M*I2+WHR"(_8)QX26#<NU&)0.Y,CD7>*- KXJ"
MJ=]7F,O-T N]W<(MGR^,7?"3P9+-\0[-_?)&T<RO43)>H-!<"E X&WJ7X<4H
MC*Q"*?&5XT8?C,%2F4KYTTXFV= +K$>88VHL!*/'&D>8YQ:)_/BU!?5JFU;Q
M<+Q#OR[)$YDITSB2^3>>F<70._,@PQE;Y>96;C[AEE#/XJ4RU^4_;"K9?M>#
M=*6-++;*Y$'!1?5D#]M '"B$\3,*T58A^E>%SE:A4Q*M/"MIC9EAR4#)#2@K
M36AV4,:FU"8V7-AMO#.*WG+2,\D8IP;>PV66<1M6EL-$5,EA@_QVC(;Q7+\C
MD?N[,;Q]_6[@&S)KE?UT:^*J,A$]8Z(#7Z0P"PT?1899@_[(K1]&#@"?^-:D
MHQWIJ\B)^(6I4^B$)Q %4:_)(;?Z&--:O>MPIU/O0:?$Z[CV8"*T42LZ( :^
M?R8!F!@L](^F<%=HW68T>^XO])*E./3H8&M4:_22-Z_"./C01+4EL"/BW9IX
MUX6>?$9C4&F0,T@54@8"%1IMF,BXF)\ *^1*F*8(5+!Q"6L+U3HAC^QOX*\/
MR3G-OY!<KR;7<Y*;".*&VL M,PAW&[:$/S!B>@'75#OA$V9S8DEK8]1\+D@H
M Z;K]7T^- 7 :?I_4Z EL*,HQ764XE9S/VZ3>$M@1\3[-?&^,SW&J/B:V3L,
M9OR!]I[O\D51*C11K_#"X"#K@].@%S[*^6?$.K78D;MGM;MG3G=O<2WSM4W,
M47E2FQQT(OSOWK0$=D3VO"9[WFI2GK=)O"6P(^)AL&\' G=)MDSW]7C&4IYS
M\_O$]AR\6!4PE8I ;2*DC/R@=XT=0?"D0E<%^FF-=COT4L('_4_H)'PO5II.
MWU-:CNMG"WG(KML]ZS:R<UI_*;MHSR[ZMTO(%A6@CN[1OC:RBYHK2/\QM6:Y
M.'Y4:?R#[K1 -2^;=@VIC6[5J-:K]8?!9=D.^WOQZJN"&C>Z'#7D."/5X+1/
M5Y>J&O5J8N2R['6GTE#G7 X7]'&#R@K0^YF49C>Q!NK/I>0O4$L#!!0    (
M   QHEK4SUW7DP,  /(2   9    >&PO=V]R:W-H965T<R]S:&5E=#0Y+GAM
M;+58X6^;.!S]5RQN.K72M6 "I.V22+=$TRIM4M5VNP^G?7#AE\0:8,XVR?+?
MGPT4PJ!.Q]B7!(/?\WL_;//DV9[Q;V(+(-'W)$[%W-I*F=W8M@BWD!!QR3)(
MU9,UXPF1JLDWML@XD*@ );'M.DY@)X2FUF)6W+OCBQG+94Q3N.-(Y$E"^.$=
MQ&P_M[#U?..>;K92W[ 7LXQLX 'DY^R.JY9=LT0T@510EB(.Z[GU-[Y9NHX&
M%#V^4-B+HVNDK3PQ]DTW;J.YY6A%$$,H-051?SM80AQK)J7COXK4JL?4P./K
M9_;WA7EEYHD(6++X'QK)[=RZLE $:Y+'\I[M/T!ER-=\(8M%\8OV55_'0F$N
M)$LJL%*0T+3\)]^K0AP!L/<"P*T [FL!DPHP*8R6R@I;*R+)8L;9'G'=6['I
MBZ(V!5JYH:E^C0^2JZ=4X>1B!4\27: '-3VB/ ;$UNA]+G,.]:T(W4-&#NK5
M2:$?%X@[3M.09B1&9RN0A,;B7+%\?EBALS?GZ VB*7K<LER0-!(S6RJA>C@[
MK$2]*T6Y+XCZ1/@EFN"_D.NX?@]\:8:O(*SA7AMNJ_+4-7+K&KD%W\14H]M4
M2)[K*J!_/ZH.Z%9"(K[VF2O9O'XVO2YO1$9"F%MJX0G@.[ 6?_Z! ^=MG]61
MR%K&)[7QB8E=OX=P^US)H,]JB0\*O-XQ=@MG9N^.]1M'&*C?J_5[K]<_[=-?
MXGV#?N,( _7[M7[_A/X#"DKQZ.P34<N2RL-YGP^_X\-W/-?_T8QQN(%F@MI,
M8#3SR"2)^[0'K],>=*::ASU7[P^['E736M74K IX@CXRDO8I,T)_=B&/1-9R
M>56[O!IU![L:T_A(9"WCU[7QZY%6T'5G%JHDU)V%QN$&FL%.\[%VAJVA"G=2
M_NE^;65',0(;E:T@)@>(+E:<[)%Q49F)?G9RC<76MMTD SQN-,"C9H.QV-KF
MFW2 ?S4>5 2F[ZMYC*$>FH2 ?S4BX-,9P3S&4 ]-2L!CQ03<S0G8]QRG8^AW
M! 7<) 4\,"K@;E;HU]_7+YB^N,TU:0&;X\(][%B\H^D&+3E$5/:*'#4VC,76
M-MP$!SQN<L"C1H>QV-KFF_" QTH/N!L?L._T3,S?D1_<)C^X _-#A0M.Z>_I
MYT^[(=P^.I#0IT%JE]W05* 8U@KG7$Y5H7AYP%(V),N*,XHG)B5+BLLMD BX
M[J">KQF3SPU][%$?<RW^!U!+ P04    "   ,:):$C*FN3@(  !-1@  &0
M 'AL+W=O<FMS:&5E=',O<VAE970U,"YX;6RUG%UOVS84AO\*X15%!R2Q)'[(
M3I, C=.N!1HT2-KM8MB%:M.V4%G**-II@/WX4;)CFC)%6]OA31O;AV\.#]_0
MCWED73P5XD<YYURBGXLL+R][<RD?S_O]<CSGBZ0\*QYYKEZ9%F*12/50S/KE
MH^#)I!ZTR/I1$+#^(DGSWM5%_=R=N+HHEC)+<WXG4+E<+!+Q?,VSXNFR%_9>
MGKA/9W-9/=&_NGA,9OR!RV^/=T(]ZF]5)NF"YV5:Y$CPZ67O77@^BG$UH([X
M/>5/Y<[/J)K*]Z+X43WX-+GL!55&/.-C64DDZK\5'_$LJY14'G]O1'O;WUD-
MW/WY1?U#/7DUF>])R4=%]D<ZD?/+WJ"')GR:+#-Y7SQ]Y)L)T4IO7&1E_2]Z
MVL0&/31>EK)8; :K#!9IOOX_^;DIQ,X I6,?$&T&1,T!I&4 W@RH*]=?9U9/
MZR:1R=6%*)Z0J**56O5#79MZM)I-FE?+^""%>C55X^35/5_Q?,G1/1\7LSRM
M2WN*;M(RF<T$GR7U$\44O<2]N>$R2;-?5="WAQOTYM6OZ!5*<_1U7BS+))^4
M%WVITJK$^^--"M?K%**6%#"Z+7(Y+]'[?,(GYOB^FLYV3M'+G*XCI^!M(LX0
M#D]0%$34DL_H^.'$D0[>EAC7>KA%KU',+[J8?WY6H>B3Y(OR+UO=UKK$KEO]
M@9^7C\F87_;47W#)Q8KWKE[_$K+@K6W20&)&"<BV!,2EOG795!0+-,Y2GDNK
M4=8JK%:I-J#5%1G$+!Q<]%>[4[&$#0G!;!MF)$FW25)GDE_5]G2J+'QZFT@N
MTB2SINC4Z+HF0&+&=-EVNLR3+1ED"8#$C!+$VQ+$(+9<J] =OT7!,""L84M;
M& LIMMMRL$URX$SR0_J33T[O1#KFMMR<@[LN!I"8,<_A=IY#3WX<0I8 2,PH
M01CH=^, Q)$;&<-K>!#$4<.2MKB(Q,.6K3+<P8;0F>BH*.7IM>*GB34]Y^"N
M2P*E9DXUTE.-/!ES(PQ5!B ULPR:8D(G(1QO3;QG.1+0(&@Z<S^,8?5NWV),
M31JA&S6^G3V<H0]\PD62H=^*%1>Y^M0AK9DZE3HO#Y":.6\-+R'UY5)0I(%2
M,\N@H29T L/Q+F66#73(HCV;6N)B$@YIBT\U>H1N]JA]^B 5:B+%G.AS,3[L
M5Z=BYX4"4C/GKZDF'/CR*RCR0*F99=#0$SJ!XGB_#O=\&+,!HTV[VL*&;0@:
M:2Z)W%SR*5<?B?)ZJ0[:U"W5=7V@U,R):\Z)0D\VC4 9"$K-+(-FH,@)%T?;
M="-C;I=!W+2I+8Q&K,VFFE$B-Z-\+>1A>X*>JD"IF1/6M!,17_8$A1\H-;,,
M&GXB]]'-T?:D>[[#!%/6?->WQ<6,A&&+036>1&X\&16+!1?C-,FLZ8&>K$"I
MF5/5@!/%OJP)RCE0:F89-.=$[N.;HZTYV#O4#(GZX-0\^[3%A8/ZH-MJ34TB
MD9M$1G6S@0LT*O*QRE*LU^T^+7^@?Y Q#16A7AY+])3*.7H9:)T5Z-D,E)IY
MC*\A" >^#O)!D0A*S2R#1B+L/OJQ.?H$W:EMK>4==Z,7AKN>;=C:'6-FJJD%
MNZGE?UM:11W7%7 GTGF!?9STX)U^E;>&%6S'R@=;8<U6N'O3RNUSLN_AX(S@
MIM7M85&+VS4$83<$0;C]0+/!G4'G]?5Q5(0UBV%?#3 ,RFE0:F89-*?A[DTP
MM\UCJW^'39O;PUHX!6N@PFZ@@K"YNWOA3J#S\OHX8,(:Z["OMAH&93<H-?/Z
M \UNI'MCS>GRC5[#OL'>I0C6L+#E)(-HR"('^FL +N_0"G%GTW6MH=3,VFGL
M([X:=@04XZ#4S#)HC"/=&W9NR^.C-G9[&&W9V,G.-4)NW@*S?+>NBCNKSFON
MXR",: 8DOKJ !!3MH-3,,FBT(]V[@&[K,^LVWKS"YV"8F:]F,.)F, CK=VG1
MN-/IO-@^3MB(!D+BJY-(0$$/2LTL@P8]TKV3Z/;\T$HXS5[-P3#S8DM-9-1-
M9""',T?T>]QI=+YBT\?9&]582'VU(RDHX4&IF670A$>[MR.=7M_H-4P<-ZS>
M$M5V7;$F,>HF,9B/K*[.D3N!SJOKX^"-:A"DOIJ:%)3EH-3,,NQ<CMZ]J>DV
M.;79MWG\:(^JONE@-;EF+NIFKO<Y%[/G$_0^7Z6BJ+?C$P4E4Y&44BS'<BGX
M20WEU?*6BE7J[YRHG?O9.A?0(S8H-;,T&N^HKU8H!04U*#6S#!K4*$PKE.ZW
M.",\H'&S2V^+BP@;MIRD4XU2U(U2_]W*U4;MHX_J3KBS#WR<Q3%-?LQ7'Y6!
MLAR4FED&S7(,N(_*+#U2R_E,2U@+L#,-7<P-71]YDBF;5KY_*"H007>BF(ED
M8?TC=HMU7BH?1VE, QSSU1%EH& &I6:608,9Z]X1M4Z:[%^CPH9!U$016]PP
M&+1MX$RC$W.C4[M5?6W0[H0ZK[.7+P;N?#/0VU<#8;\;Z /;F,8V!MP99=:6
M)VZ>J+2$#5M<K_F*N?GJ@8^7(I7/M>^_R'EE\7259FF2H]?)XO'M@0^1;OG.
MB^?C.(QIAF.^^IX,E+6@U,PON&K6BF&^4+B1V=V*!\'N587KV5C"XL& MFS8
ML6:AV,U"7:SK:PMWI]AUW:'4S()J6(M]]4!C4'"#4C/+H,$M!NZ!QM;FYEXC
MZ&#8.M_^SHTYE.MF]?U*2C0NEKE<W\]B^^SZGBC7X?FHOG5(X_EWX?F[^@XA
M?2VSOM'*;2)F:5ZBC$^59' 6*W00ZWN7K!_(XK&^_<?W0BKKUS_.>3+AH@I0
MKT^+0KX\J'[!]@XR5_\"4$L#!!0    (   QHEH6/B'LB (  )(&   9
M>&PO=V]R:W-H965T<R]S:&5E=#4Q+GAM;*U576^;,!3]*Q:KIE9:RW>:=@E2
MFVC:I&VJDG5[F/;@P"58-3:S3>C^_6Q#*6EHUX>]@&WN.9QSL"^SAHL[60 H
M=%]2)N=.H51UZ;HR+:#$\HQ7P/23G(L2*ST56U=6 G!F025U \^;N"4FS$EF
M=NU&)#->*TH8W @DZ[+$XL\U4-[,'=]Y6%B1;:',@IO,*KR%-:C;ZD;HF=NS
M9*0$)@EG2$ ^=Z[\RT5LZFW!=P*-'(R1<;+A_,Y,/F5SQS."@$*J# /6MQTL
M@%)#I&7\[CB=_I4&.!P_L'^PWK67#9:PX/0'R50Q=Z8.RB#'-54KWGR$SH\5
MF'(J[14U7:WGH+26BI<=6"LH"6OO^+[+80#PHV< 00<(7@L(.T!HC;;*K*TE
M5CB9"=X@8:HUFQG8;"Q:NR',?,6U$OHIT3B5K& 'K :T@I1O&;'1GJ*UWBQ9
M30'Q'"TX4T*GC:ZD!"419AGZ3/"&4%T-$ATO06%"3S3L=KU$QT<GZ @1AKX5
MO):Z6,Y<I86:U[EI)^JZ%14\(^H+%F<H]-^AP OB$?CB9?@2TAX>[<-='4^?
M4=!G%%B^\!\9Y8*7CW$T1!5H8;\0"/3S:B/M^J\QNRU_-,YO#NJEK' *<T>?
M1 EB!T[R]HT_\=Z/F?]/9'M1A'T4X4OL2>\>V\TPYK4EF%@"TT-V21!,0U]_
MB-W0Q6&9/YU>1'Y?MJ<OZO5%K]-''W?HF,B6)1Z\_30XC[SS)R+'RJ)XZHV+
MC'N1\8LBO^KFG.X'B8X'@D_&%,>'L7K>Q8'BPS)_$H63I[&Z@XYANK4^<5O"
M)**0:Z!W=JYY1-L!VXGBE6TB&Z[TAK?#0O\T0)@"_3SG7#U,3%_J?T/)7U!+
M P04    "   ,:):X0B!"FT"  #=!0  &0   'AL+W=O<FMS:&5E=',O<VAE
M970U,BYX;6RM5-]OVC 0_E>LK)I::<.0T!]C(1+05>L#$@)U>YCV8)*#6'7L
MS#;0_?<[VR&C%:5[V$MBG^_[?-_Y[M*=TH^F!+#DJ1+2#*/2VGI J<E+J)CI
MJ!HDGJR4KIC%K5Y34VM@A0=5@L;=[A6M&)=1EGK;3&>IVEC!)<PT,9NJ8OKW
M&(3:#:->M#?,^;JTSD"SM&9K6(!]J&<:=[1E*7@%TG EB8;5,!KU!I.^\_<.
MWSCLS,&:."5+I1[=YKX81ET7$ C(K6-@^-O"!(1P1!C&KX8S:J]TP,/UGOW.
M:T<M2V9@HL1W7MAR&-U$I( 5VP@[5[NOT.BY='RY$L9_R2[X7J-SOC%650T8
M(ZBX#'_VU.3A ( \QP%Q XA? OJO )(&D'BA(3(OZY99EJ5:[8AVWLCF%CXW
M'HUJN'2ON+ :3SGB;#:'+<@-D#GD:BVY3^U',BH*OV2"W,M0*N[@_!8LX^("
M/1X6M^3\[(*<$2[)E N!YR:E%D-RQ#1OKA^'Z^-7KD_(5$E;&O)%%E \QU.4
MTNJ)]WK&\4G"*=,=DO0^D+@;7QZ)9_+O\/Z)<)(VO8GG2]Y([TJKBDQ0JL:Z
MQ2>V)9GXQP5-?HR6QMM_'LM?X.\?YW<]/C URV$881,;T%N(LO?O>E?=S\?$
M_R>R9ZGHMZGHGV)O4Z%!, L%L8KD^X0(SI9<8,G!T1H*Q)\\L1M+VZP7=VY2
MNCW4]H93B)D>= KF?NT'B,% -M*&(FNM84:-<4;Y7GYAQ]DU\BU+_]*$P8<E
MM.;2$ $KI.QVKK'S=1@F86-5[?MQJ2P6@%^6.']!.P<\7REE]QMW03O1LS]0
M2P,$%     @  #&B6BF8M5%9!   *!L  !D   !X;"]W;W)K<VAE971S+W-H
M965T-3,N>&ULQ9EM;]LV$,>_"J$50PNDD2@_Q,YL XF58@$6+(B7]<6P%[1T
MMH5*HDI2=O+M1U**9"4R70/,"@2)'GA_'G]W/.7 R8ZR;WP#(-!3FF1\ZFR$
MR"]=EX<;2 D_ISED\LV*LI0(><O6+L\9D$@;I8GK>][034F<.;.)?G;/9A-:
MB"3.X)XA7J0I8<_7D-#=U,'.RX.'>+T1ZH$[F^1D#0L0C_D]DW=NK1+%*60\
MIAEBL)HZ5_@RP&-EH$?\'<..[UTCM90EI=_4S6TT=3SE$200"B5!Y)\MS"%)
ME)+TXWLEZM1S*L/]ZQ?U+WKQ<C%+PF%.DZ]Q)#939^2@"%:D2,0#W?T.U8(&
M2B^D"=>_T:X:ZSDH++B@:64L/4CCK/Q+GBH0>P92I]O KPS\'S7H50:]UP;]
M P;]RJ"OR91+T1P"(LALPN@.,35:JJD+#5-;R^7'F8K[0C#Y-I9V8O8 6\@*
M0 \0TG46ZUA\1E=1I"])@FZS,KG4BX\!"!(G"'^28QX7 ?KXX1/Z@.(,W<5)
M(D?PB2ND4TK:#2L'KDL'_ ,.8'1',['AZ":+(.JPGYOM>P9[5\*HB?@O1*Y]
MH^!5SLZ1/SA#ON</NOPQF]\1:=[#!\T#LWD 86W>-ZRF5\>WI_7ZYOB>R0"K
M*A!G:W0/3(<T"P']N4SBM0[N&;IYRN5FA C]%:=J'%VAA7S%5R0L!RP$80+)
M-(-+O;K/'I8_72$W^J1*V27/20A31]8J#FP+SNS77_#0^ZV+MTVQP))8*Q;]
M.A9]K=X[LM>^,)JBN<Q:)LFBK['8H+G>Z<#0/W]((W0K(.7_=I'MVR1K4RRP
M)-8B.ZC)#HQ9_IBMBF0E:Y#,WGPOO6F=WETLC9JGLK0I%I1B0RVFOMS;&>YY
MWL3==C :UHR&1D;U]I: 8AHA01'7V_OY ++.8FZ<XU1F-L4"\^HQ>@;"#*EV
M46.\^(D%M7^@H!I].A6[3;' DE@K%J,Z%J-W+Z@CFV1MB@66Q%IDQS79\3L4
M5*/FJ2S';VK@>*\$EH@L3=A"A+WF7V?O?ZBHYDE.I7;$Y:XR6**TY4:;Y5X;
M@G^LK+*ZK'8S/%//0\B$[$H[<1KG.1EGU3WAO33TS@>]5WEH:](V/+^!YQ^!
M%Q6AS$.2TB(3ZCM3'-V_W;EHG.=D>/Z;+=Q[LX5M3=E&U[1'^*?U1\/#_9'9
MJ9,Y6^V0;*FU ]+T2/C]FR1LM4NRJA;84FOC;1HE;.Z4+'VSK+9.1UPV?+,L
MN=%FV314V-Q3V/MF6>VJ*K57WZR+T>O":VG2-KRFC<+F/FI1+#E\+R04=",Q
MBDXN5ML>JVJ!+;4VOJ;SP>_?^F"KO8]5M<"66AMOT_Y@<_]C[S^JMVT,]ML[
M<6[VY61R5ILB=^]H0>;46A_1<!0J+.4I0_VT/@:ZTH<?;C.\/$.Z(VP=9QPE
ML)*FLB+)ZLW*8YGR1M!<'U0LJ9 )K"\W0")@:H!\OZ)4O-RH">K#L=E_4$L#
M!!0    (   QHEJ"=^73^P(  +D)   9    >&PO=V]R:W-H965T<R]S:&5E
M=#4T+GAM;+56;4_;,!#^*Z<,32"-YJ7T!=9& CI$IW5"(+8/TSZ8YMI:)'9G
M.RW\^YV=-!0M#1*P+XE?[IY[[L4^#]92W>L%HH&'+!5ZZ"V,69[XOIXN,&.Z
M)9<H:&<F5<8,3=7<UTN%+'%*6>I'0=#U,\:%%P_<VI6*!S(W*1=XI4#G6<;4
MXQFF<CWT0F^S<,WG"V,7_'BP9'.\07.[O%(T\RN4A&<H-)<"%,Z&WFEX<A9&
M5L%)_."XUEMCL*[<27EO)^-DZ 66$:8X-1:"T6^%YYBF%HEX_"E!O<JF5=P>
M;] OG//DS!W3>"[3GSPQBZ'7]R#!&<M3<RW7EU@ZU+%X4YEJ]X5U*1MX,,VU
MD5FI3 PR+HH_>R@#L:4013L4HE+!!<(O##F6(V98/%!R#<I*$YH=.%>=-I'C
MPF;EQBC:Y:1GXA$JOF(V,C 6VJB<(FXT,)' )29S+N9P:@/'#4<-AW":)-R&
MDZ4D7Q2%#>[^" WCJ3X@D;$PJ% ;N&8&X6;-EK1XSO0"+J@&*MA#&*'F<T%"
M"3!=K3_1@#W@ B8\3<F$'OB&_+6L_6GIVUGA6[3#MS9,I# +#5]$@LES?9_B
M5 4KV@3K+&H$G##5@G;X":(@ZL#MS0CV]PX:<-M5$MH.M_UR$GY]HST8&\ST
M[SJ/"Z"C>B![A$_TDDUQZ-$9U:A6Z,4?/X3=X',#S:.*YE$3>OQ=EIEGF<R%
MJ:-7 '0=@+T05G'8ZPS\58W53F6UTVCU:TX!B7HNZ/TZFXWJKPQ)MR+7?:_,
M=?\#S5Y%L_?6S/7^S5P0U&>N7UGM-UJ=,),K;AXAH3->9[-9G1+?<HFOR?PS
M/L<5G^-&P N\4SFU'HCZNZNI$>*5:0J#I]LX>*]Z*I'>F>E6WPC?6E(EPG9-
M[;H,PNC);O2VHGI!GXJ@Y0I@9U7Y6]TT0S5W;P8-4^MFT5BKU>I=<EITXR?Q
MXE%##8-ZFH849Z0:M'IT5ZGBG5!,C%RZWGPG#75Z-US0VPJ5%:#]F91F,[$&
MJM=:_!=02P,$%     @  #&B6KY8E+=+ P  J H  !D   !X;"]W;W)K<VAE
M971S+W-H965T-34N>&ULK5;);MLP$/T50D4+%TBLU5MJ"TB<%,TA:) T[:'H
M@99&-A&)=$C*3OZ^)"4KMLK(1=&+Q67F\;WQ<#C3+>./8@4@T7.14S%S5E*N
MSUQ7)"LHL.BS-5"UDS%>8*FF?.F*-0><&J<B=P//&[H%)M2)IV;MEL=35LJ<
M4+CE2)1%@?G+!>1L.W-\9[=P1Y8KJ1?<>+K&2[@'^;"^Y6KF-B@I*8 *PBCB
MD,V<<_]L[AL'8_&=P%;LC9&6LF#L44^NTYGC:4:00R(U!%:?#<PASS62XO%4
M@SK-F=IQ?[Q#_VS$*S$++&#.\A\DE:N9,W90"ADN<WG'ME^@%C30> G+A?E%
MV\IV.'104@K)BMI9,2@(K;[XN0[$GH/"L3L$M4/0=HC>< AKA] (K9@969=8
MXGC*V19Q;:W0],#$QG@K-83JO_%><K5+E)^,KVG""D#?\#,(=(JNL@Q,8-'K
M!KK#$M =)(PF)"?8A+]W"1*37'R<NE+1T&!N4A]Y41T9O'%DB&X8E2N!KF@*
MZ:&_J^@W&H*=AHN@$_ &\SX*_1,4>,' PF?^]^Y1!YVP"6EH\,*C(4671"0Y
M$R4']/-\(2176?O+%K$*,;(CZJM\)M8X@9FC[JH O@$G_O#.'WJ?;'+_$]B!
M^*@1'W6AQ_<2RU(R_H*DTL]5YMCD5AA^E92ZTFQBKQ_X4W>SK^.8U0'!04-P
M<)0@:'(@3A!5=9)E*(,4.,[1 BAD1-H8#VQ<O&&+\3&K \;#AO&PFW%=\2;C
MD2J<RS(W-U#86'8#]?RH/_;>VZ[LO-/S'W-FU @<=?*Z>BJ)?#G5U3A%ZNZH
M)TH8C3:)%93O'8;8'[3^B>X3>X-^]$<@#KB/&^[C3J0'F@!7E9":?%\S0=XB
M/K82#R<MXG:S8&#/H4E#<]))4Q>CA$-*I#5ONIU[OM\/W\B;(Y[#_J@[SK[W
M^E!YG5A?Y0JX];7QK"&+@E9D=W:MVQG:(^OOO:!^=_HV;V97R:M!6BQ]KYVX
M=KO BUHTW;TWOP"^-*V04->GI+)Z.IO5JMVZT.V6[AE:ZZH-.S?-A_L*4_5P
MZF%<$BI0#IF"]/HC5=YXU195$\G6IK-8,*GZ%#-<J582N#90^QEC<C?1!S3-
M:?P;4$L#!!0    (   QHEJG]]5?C (  *4%   9    >&PO=V]R:W-H965T
M<R]S:&5E=#4V+GAM;(54;6_3,!#^*Z<PH4VB39JV TH:J5U![,/0M#'X@/C@
M)I?&FF,'VWWCUW-VTE"DKGQ)_'+WW'/G>R[9*OUL2D0+NTI(,PU*:^M)&)JL
MQ(J9OJI1TDVA=,4L;?4J-+5&EGNG2H1Q%%V'%>,R2!-_=J_31*VMX!+O-9AU
M53&]GZ-0VVDP" X'#WQ56G<0IDG-5OB(]JF^U[0+.Y2<5R@-5Q(T%M-@-IC,
MQ\[>&WSCN#5':W"9+)5Z=IO;?!I$CA *S*Q#8/3;X T*X8"(QJ\6,^A".L?C
M]0']D\^=<EDR@S=*?.>Y+:?!NP!R+-A:V >U_8QM/IY@IH3Q7]BVME$ V=I8
M5;7.Q*#BLOFS75N'(X<X?L$A;AUBS[L)Y%DNF&5IHM46M+,F-+?PJ7IO(L>E
M>Y1'J^F6DY]-;V6F*H2O;(<&>C#+<^ZJQ03<RN;)7>TN%V@9%^8*+H!+N.-"
MT+%)0DL4'%"8M>'F3;CXA7!#N%/2E@8^RASS?_U#HM[QCP_\Y_%9P#NF^S <
MO($XBL?P]+B RXNK,[C#KBY#CSO\;UU@P4TFE%EKA!^SI;&:.NGGJ=0;Q-%I
M1*>NB:E9AM. Y&-0;S!(7[\:7$<?SO ==7Q'Y]#3+TKV,F9*UY&H->;T3CX#
M2QG@CC1L$"Z7*+'@]NH4^P;_O<=W4MZDO5%_G(2;$ZS&':OQ65:S2FG+?S=-
M5*/F*@=5 .7?HS*2LOT%]1F)1U*[$W&9[8&J;:@=V8J&BK$N!;84V&9TBOMY
M%H,(]LBT.57F\$@Z%>J5'Q &,K66ME%1=]K-H%DCO;_FS0"C5EP17Q!8D&O4
M?TNL=#,4FHU5M1?B4EF2M5^6-$=1.P.Z+Y2RAXT+T$WF] ]02P,$%     @
M #&B6ALB\,2:!@  OR(  !D   !X;"]W;W)K<VAE971S+W-H965T-3<N>&UL
MO5I9;]LX$/XKA!MT6Z")15*7G<1 XJ1H@'9;)&GWH>@#(]&VMI+HDG2._OHE
M9<6R)(HY5NF+94DSP[DX\Y'BP0WC/\6"4@ENLS07AX.%E,OQ<"BB!<V(V&-+
MFJLW,\8S(M4MGP_%DE,2%TQ9.D2.XP\SDN2#R4'Q[ N?'+"53).<?N% K+*,
M\+MCFK*;PP$<W#\X3^8+J1\,)P=+,J<75'Y=?N'J;KB1$B<9S47"<L#I['!P
M!,>GV-<,!<6WA-Z(K?] FW+%V$]]<Q8?#ARM$4UI)+4(HB[7=$K35$M2>OPJ
MA0XV8VK&[?_WTM\7QBMCKHB@4Y;^D\1R<3@(!R"F,[)*Y3F[^4!+@SPM+V*I
M*'[!34GK#$"T$I)E);/2($OR]97<EH[88H"X@P&5#*C)X'4PX)(!/W8$MV1P
MFPQN!X-7,A2F#]>V%XX[(9),#CB[ 5Q3*VGZ3^']@EOY*\EUHEQ(KMXFBD].
M+B2+?BY8&E,N_@*GOU:)O .[8,JR)<MI+@5@,W 41:MLE1))8_!9+B@OWG.Z
MT ES3<%')@1X<T(E25+Q5K%_O3@!;W;>@AV0Y.!RP5:"Y+$X&$JEL1YW&)7:
M3=?:H0[M,/C$<KD0X#2/:5SG'RI+-^:B>W.GR"KP$^%[ ,-W #G(,^AS^GAV
MUZ(.WG@?%_)PA[R'''N61RPK_?O]HV(&9Y)FXH?)D^N17/-(NMZ,Q9)$]'"@
MY O*K^E@\OH5])U]DQMZ$E9SBKMQBFN3/CDF*<DC:K)QS>@7C+H$7D]&(7*]
MT<'P>EM[ QD,O-#;D-7T\C9Z>=9@35><JQD!EI0G+ :LB%=4B]>;5$7JK4IZ
M';:QR0*OSRCU)*SF#7_C#=\:I4LF2:HJU--\8G+)>AQO*UJ[*("X$=,VE1^Z
MYH &&Q."YR9:T!IMY(>A'S:4,I!!'[HCLU[A1J_0JI?J@*J_Y6"=<-$=N.0D
M%ZI*Z,YZ%/^KND*F2[-)<:ODI^973\)J3AAMG##Z8Z5QU*=3>A)6<PITJG;M
M/#=G2\[:1((^#ILSR4B'_%%'>81;4 *^?($LQ^@I6'U)JWL$51Y!UFA]?L@%
MX(HJL$\5Y(Y2(D0R2Z)BFINQ$FH%#J.@%=XVU2[T<$>MA!54@=:F/SG*V$KC
MP4I5-3-GG&4*[%=3]3D=X/B!D;_#'^^^(^/,+CEKQKK.R&WZY"7P#*P #;0C
MFM/93*V+-)*6Y)::8VN5\.2T=UMN@1!U9$"%?Z 54/38\LN!:F$+$6Q&S4 %
M7=1E1X5<H!VZV&JH 8S  #FMA#+1N1 &';I5D 3:,<ET0?(YU<NF]R3AX!M)
M5U0GSEDNJ0J\!.=JFH$/-%9$1W-.:8$$@%I>E5WR 7Q@'_[)>=:3M+JS*IP$
MPS^&$6"OR*DO:77'5-@)6E&(-<-';2"-@V9ZMXE"Z)AS&U78!3DOCP^0%1\]
M-4Y]2:M[I$),R(H_>L8'Y6#UHA1ZS=IE('.]L&/-@BJL@^Q8Y^7PP109((T_
M:K2+DP?TZT81IR;YT ]@ATLJR(3LP.41?1^U 8SO-2&=@6@W[.KGJ((ER Y+
M^NOGJ(TW5.:-4-..-AF"CM]A1X5+D!V76*H=,D$(Y'E-Q=ID2*WD.Q2K@ :R
M XW'[)L:M;:*?7*-ZTE:W0D5HD'!'VO2J%?TTI>TNF,J](+LVSRVM U-:[C
M]9MY:Z*#8==.)ZH !++OOO33JGO==^E+6GVCO@(OV+[QTF^KQNT]&+5\:.YC
M&ZBPXW4$%U>H ]M1QPMV:FR (&X0-NKMR0,*6EJU:8#N5HTK](+MZ. 1K1JW
M44*[51N(=@.G SKCK>]$=B317ZO&!BQAV&XWD'7NM^,*<>!G?]K![8\V"D*T
MO^T8Z2!RNC) HXCZDZI]8WO[5FD(+A>TZ%<DOP/T=JER1 #)JJES!\ARR=EM
MDJE)D]Z!'>#L09 E::HWZU4ZK7).29K\5C-*AX;J:;>>8$J,U-*?M^)_^GQ5
M%S4D)3Q/\KD \8JK:Z%"3F\E@ ADQ<?6O9K1M2*Q ]RZ=;0^;;9M>^Q7C/]O
MB7)=Q/*\/'IPD\@%.#N?@E$8[($+2L'K5R%"SO[?3/DQ+.X@W+_''9=:[X("
M[N^9.L5PZ^-Z1OF\.-4@U(BJAJX_'FZ>KD].3.'XM#A@T'R.QB?(\/P(>^,3
M[)G>P/&QF<-7',7AC&&ETOIHQR?"YTDN0$IG2CUG+U!3F*]/2ZQO)%L6QP&N
MF)0L*_XN*(DIUP3J_8PI/Y4W>H#-F97)?U!+ P04    "   ,:):0;AAR>8#
M  #>"@  &0   'AL+W=O<FMS:&5E=',O<VAE970U."YX;6R]5FUS&C<0_BL[
M%T]JSZ3<"Q@#!F8P=B;,)*W'=M(/'G^0[Q9.M4XBDHZ7_OJN=' Q+B9M,^T7
MT,ONHWU6>O:VOU3ZR>2(%E:%D&80Y-;.>V%HTAP+9AIJCI)VIDH7S-)4ST(S
MU\@R[U2(,(FB=E@P+H-AWZ]=ZV%?E59PB=<:3%D43*\O4*CE((B#[<(-G^76
M+83#_IS-\!;MY_FUIEE8HV2\0&FXDJ!Q.@A&<6_<=?;>X O'I7DV!L?D4:DG
M-YED@R!R :' U#H$1G\+'*,0#HC"^+K!#.HCG>/S\1;]O>=.7!Z9P;$2O_',
MYH.@$T"&4U8*>Z.6'W##Y]3AI4H8_PO+C6T40%H:JXJ-,T50<%G]L]4F#\\<
MDN05AV3CD+QPB)NO.#0W#DU/M(K,T[IDE@W[6BU!.VM"<P.?&^]-;+ATMWAK
M->UR\K/#6ZO2IUR)#+7Y":Z^EMRNX6<8JV*N)$IK0$UAE*9E40IF,8-?;8[:
M[VO,W6TN$#XJ8^#XFFERR-'RE(D3.+Y$R[@P)W $7,)=KDK#9&;ZH:6XW>EA
MNHGQHHHQ>27&)GQ2!&S@2F:8[?J'Q+<FG6Q)7R0' 3\QW8!F_ Z2*#F%S[>7
M<'QT<@"W62>SZ7&;K^!^+T\3F:H"X=CEZP3N/Y([3"P6YF%?4JJS6OO/<NKN
MF3E+<1#0"0;U H/AVS=Q.SH_P*15,VD=0A]>K>:D,P-6D513P8SATS64D@J%
MX'\0/4$4T-!FQ9;LTIS)&;JKGC*N8<%$B>[Q<&F1 K2@R1)RS,B(S30BU0(+
M4ZT*TO*WO"F?MW0G;\?")XQ7Z2- !<BTY'*V]S55U-J>FJMBBV$<1?UPL2<?
MIW4^3@_F@TH&%00)XU+3(T_7<*>9-!2Q*T6C['<2JJ.S-YR#R/_R'MMUW.W_
M\46V_P,F9S63LX,W,"I4Z<I1_1PY4?KGKV<?K;._O)=6U&W5#\8;C0]'=Q\_
MO+M/'@[P[ 0O%KHU\>[WH*EXHK\X)M> >Z7)YG.M5IR^:RC65'&C1DR?"R'<
M^R01'E2N=>BU>M\[]7[9JG>R5>^-4^\'K][15KWFA^4+6:GIWX<@<64A3J#P
MQ;ZQ0WKGUH^@M<L.IU-*B1M9MMKE]G>%^^-,*'6IDG+3GBRYS6%R,X9NYZP!
MMXCP]DTG2:+S7Q3EL>-G<7R^%>"=B]M;Q.>-?:\H?/:)+U#/?.=CZ$02157&
MZM6JN;I(>F/?4[Q8'W5ZX\Z^]>ZF&7N)0TU:O,\^[HT\?O@MG*KSHZ_KC$L#
M J<46M0XHP*HJVZJFE@U]PW)H[+4WOAA3@TH:F= ^U-%.=I,W %U2SO\$U!+
M P04    "   ,:):6W@F[D@"   %!0  &0   'AL+W=O<FMS:&5E=',O<VAE
M970U.2YX;6RU5$V/VC 0_2LCMVJWTI:$\-&*AD@+M"I25T70;0]5#R89B(4=
M9VT'EO[ZVDY(405[*P?BL>>]>3/C<7R0:J=S1 -/@A=Z3')CRE$0Z#1'075'
MEEC8DXU4@AIKJFV@2X4T\R#!@R@,AX&@K"!)[/<6*HEE93@K<*% 5T)0=9P@
MEX<QZ9+3QI)M<^,V@B0NZ197:![*A;)6T+)D3&"AF2Q X69,[KJC2=_Y>X?O
M# _Z; TND[64.V?,LS$)G2#DF!K'0.UGCU/DW!%9&8\-)VE#.N#Y^L3^R>=N
M<UE3C5/)?[#,Y&/RGD"&&UIQLY2'S]CD,W!\J>3:_\.A]AT,":25-E(T8*M
ML*+^TJ>F#F> *+H"B!I Y'77@;S*&34TB94\@'+>ELTM?*H>;<6QPC5E990]
M919GDI61Z2Z7/$.E7\/'QXJ9([R%NRQCKFJ4P[RH6^]J>#-#0QG7;^+ V.".
M(DB;0),Z4'0ET#U5'>AU;R$*HP$\K&9P\_(?FL!J;Q.(V@0BS]N_PML+PTX(
M]XQS)W"54X6PQ+)2:6Z;!0LEMXJ*2WJ?Y77#,-(E37%,[&W7J/9(DE<ONL/P
MPS.J>ZWJGF?O75'=%'K*J=;P=0/?[$#I2AW!]P-^?K'^,#<H]*]+TGO_07J_
ME=Y_MN"U0O6WQ&5=XEN@E<FE8K\Q RID59A+TFORH2=W+\;>=;#^Q<'^7%=P
M=JO= V%OT)85&CAN+#;LO!L04/70U8:1I;_H:VGLV/AE;M\I5,[!GF^D-"?#
MS4[[\B5_ %!+ P04    "   ,:):O?G.4W@#  "1#0  &0   'AL+W=O<FMS
M:&5E=',O<VAE970V,"YX;6RU5VU/VS 0_BM6-FU#8N0]35E;"0K3)@VIHH-]
MF/;!)-?&PHF+[;3P[V<[(:1MJ#;1?FEMY^[)<T_N[/-@Q?B]R  D>LQI(896
M)N7BU+9%DD&.Q0E;0*&>S!C/L513/K?%@@-.C5-.;<]Q(CO'I+!& [,VX:,!
M*R4E!4PX$F6>8_YT#I2MAI9K/2]<DWDF]8(]&BSP'*8@;Q83KF9V@Y*2' I!
M6($XS(;6F7LZ=GWM8"QN":Q$:XQT*'>,W>O)]W1H.9H14$BDAL#J;PECH%0C
M*1X/-:C5O%,[ML?/Z%]-\"J8.RQ@S.@ODLIL:,462F&&2RJOV>H;U &%&B]A
M5)A?M*IM'0LEI9 LKYT5@YP4U3]^K(5H.2B<;@>O=O V'8)7'/S:P2AG5\Q,
M6!=8XM& LQ7BVEJAZ8'1QGBK:$BA/^-4<O64*#\YFDJ6W&>,IL#%1W3Y4!+Y
MA#ZC:?55$9NA:UB4/,F45'HVS3 '@3Y=@,2$BB-E>S.]0)_>'Z'WB!3H9\9*
M@8M4#&RIZ.F7V$E-Y;RBXKU"Q4=7K)"90)=%"NFZOZW":F+SGF,[]W8"7F%^
M@GSW&'F.%W;P&?^[>["#CM]([1L\_Q6\2MQC-*98"*WE3U5WHE0JFX^ ?O]0
M#NB[A%S\Z5*O0@^ZT76YGXH%3F!HJ7H6P)=@C3Z\<R/G2U?H>P);$R)HA AV
MH5<YU\JK%%V4G!1S- %.6'J,;C$MH4N""C<RN'J#6H[\OA_$ WO9CJW#R@EB
MI[%:(QTVI,.WD:XJHXMU!1RV^81A'&[2WC;SW#CJQ]V\HX9WM).W[S@G#KHB
ME.I=TY!LE_2$LSG'>1?MG;C_FV][ EN3H-=(T#MHX?7V*<2>P-:$B!LAX@,5
M7KQ=4J$3>AL9O&WE^;'O=B=POR'=/U3A];<+S]5;P0;M;3.WY\5NKYNWZ[P<
MK<Y.YK<@I":J#]'IC4#J6$23Z5GWT;@3ZG^3;%]HZX&W>@KWH 57P^]+C#VA
MK8OAO8CA':CH:N!V/05>/]K(W@ZK* KZKR3O2[/B[FP!WE)V-7*XQCMVG4WB
M'69A'&]N%W:KN<V!STW/+U#"RD)6O6"S6MTKSO6]0C?'&^OJOG%FNFS[!::Z
MK*A.;TX*@2C,%*1STE.<>-7_5Q/)%J:%OF-2->1FF*D[$W!MH)[/&)//$_V"
MYA8V^@M02P,$%     @  #&B6K>"8I^6 P  'P\  !D   !X;"]W;W)K<VAE
M971S+W-H965T-C$N>&ULQ5=K;]LV%/TK%UI1M$!K/2SYD=D&;&O# BR8T2#;
MAZ$?:.G:)B*1*DG;\7[]2$E1I501:D#K\B&BJ'L.[SE\F'=VYN)1'A 5/*4)
MDW/KH%1V8]LR.F!*Y(!GR/27'1<I4?I5[&V9"21Q#DH3VW.<D9T2RJS%+._;
MB,6,'U5"&6X$R&.:$G%98<+/<\NUGCL^T?U!F0Y[,<O('N]1/60;H=_LBB6F
M*3)).0.!N[FU=&]"US& /.)/BF=9:X.1LN7\T;S<QG/+,1EA@I$R%$0_3KC&
M)#%,.H\O):E5C6F ]?8S^Z^Y>"UF2R2N>?(7C=5A;DTLB'%'CHGZQ,^_82DH
M,'P13V3^'\YEK&-!=)2*IR589Y!25CS)4VE$#>#ZKP"\$N"] 'C#5P##$C#\
MWA'\$N#GSA12<A]"HLAB)O@9A(G6;*:1FYFCM7S*S+S?*Z&_4HU3BWO%H\>/
MQKD8UCS5RTF2?$(^PC*.J6F2!&Y9L<+,AW<A*D(3^5Z'/-R'\.[->W@#E,$=
M31(=(&>VTHD9>CLJDU@727BO)#&$.\[40<(O+,:XB;>UH$J5]ZQJY742+C,Q
M ,?_ )[C3MKRZ8;?$0T?N@;N!2WP\/OA?H>:835'PYQO^-H<'8A 6'T[1TLA
M"-NCWH8*5A>HQVW()>]>GHF(X>_?-27<*DSEYQ8]JV)\OWU\<_3<R(Q$.+?T
MV2)1G-!:O/W)'3D_MWG;)UG8$UG#=[_RW>]B;^R-J.X[/IDVMCG9R7BMDP79
M*"<S!_AIH9?3J6Y/$3&M102#:1734!U4JH-.U0],8,3WC/YSA>Q.RFME!]^(
M\MU!\$)Y3R,V+!I5%HVZ%X;9:&T+@]0VY/8"LA:7E1N2F WYH7C ":6B; \9
M"LKC-F,[$[G6V&Y5'ER0" DNI.8TAA'$Y-)VFH<])=7P?EQY/^[,\H^4T>U1
MPB8AK,VP3O2UAO5)%O9$UG!M4KDV^9]_0B9]^MXG6=@36</W:>7[]+\^*=@Q
MW:( OBN").PU4K7MRU612U [.#TG</1?\^Q<=^9\K;T]D37L=9VOUU?GAQM,
M3OI^2[8)@K[U%G:WN=V=V;5+OF2K3]YXZH]'+^8N[&O4PF^[5CFD*/9Y!2:U
MDT>FBNMVU5M4>6M3Y9G*XT6_KOZ6><UC?Z4I2D=]&]Y3)B'!G:9T!F,M4135
M6/&B>);7)UNN=+63-P^Z@D5A O3W'>?J^<4,4-7$BW\!4$L#!!0    (   Q
MHEIK5@,X60,  ,P,   9    >&PO=V]R:W-H965T<R]S:&5E=#8R+GAM;,57
M[V_:,!#]5ZQLFC9I)7%^0.@@4F'K-FG3JJ)V'Z9]<,E!HB8QLPVT__W.3IHF
MD*)511H?(';N/;][W)%CM.7B5B8 BMSE62''5J+4ZM2VY3R!G,D>7T&!=Q9<
MY$SA4BQMN1+ 8@/*,]MUG+Z=L[2PHI'9NQ#1B*]5EA9P(8A<YSD3]Q/(^'9L
M4>MAXS)=)DIOV-%HQ98P W6UNA"XLFN6.,VAD"DOB(#%V#JCIU/J:H")N$YA
M*QO71*=RP_FM7GR-QY:C%4$&<Z4I&'YL8 I9IIE0QY^*U*K/U,#F]0/[N4D>
MD[EA$J8\^YG&*AE;H45B6+!UIB[Y]@M4"06:;\XS:=[)MHP=#"TR7TO%\PJ,
M"O*T*#_9765$ X \W0"W KB[ /\)@%<!/)-HJ<RD]9$I%HT$WQ*AHY%-7QAO
M#!JS20O]-<Z4P+LIXE0T4WQ^>Z*-B,F4YU@=DAE_3\@,2R9>9T!^+,C9EHE8
MDL^"%0HCWWX$Q=),OL.PU\0F,F$"Y,A6J$CSVO/J]$EYNOO$Z1[YS@N52/*I
MB"%NXVW,I$['?4AGXAXD_,Y$CWCT/7$=-^C0,_UWN'] CE>[ZQD^[REWM2\G
MDWUWSP0ZN03L!T5N[DDS[H+=FVUC.?GU#2G)5P6Y_-WE;WF^WWV^_@TXE2LV
MA[&%32Y!;,"*WKRB?>=#ESE'(FM9Y==6^8?8HW:%=:5:X@.#U[].F\@=4DK=
MD;UI)K$?1GT_I&$=UI(7U/*"@_(^Y:N,WP,0TS!5/W2I/$CSW"_D2&2MC/MU
MQOW_7+O]8UIU)+*658/:JL$+:W>P7[LT=#Q_IW;WPRAU!H'?7;MA+2\\+&\#
M A_)I3Z"CPD@YRP5Y)IE:^A26]*%#1DA[0T]Y_%%=X3O(VC0[]%^M_!A+7QX
M4/B4R>0$)PF586U=SJXZ&^X@Q7.KZ$ADK6RI\_@L=OYSRU4"CN36L=C:=C5&
M%_K"MJL(F@TU\)Q!N%.]'6&>[_2?:#OJ/@ITC]MX%5^K\_Q>Z.WJW0^C@=L+
MACN"[<9<F(-8FG%9DCE?%ZJ<J>K=<B2?Z)%<SY4[^SBJGYD!U7ZD*>=\G)B6
M:2%)!@ND='H#-%&4HW.Y4'QEIL\;KG"6-9<)_MT H0/P_H)S];#0!]1_8**_
M4$L#!!0    (   QHEJ]YX=5[ 0  %0;   9    >&PO=V]R:W-H965T<R]S
M:&5E=#8S+GAM;+69:W.C-A2&_XJ&[G1V9[+A8N-<:GLF,;O;S#1M)MEM/W3Z
M00'9: *(E80=__L> 0$3L%QOE2\)%YWW2(^EPPN:;AA_$C$A$CVG229F5BQE
M?FG;(HQ)BL4IRTD&=Y:,IUC"*5_9(N<$1V50FMB>XTSL%-/,FD_+:W=\/F6%
M3&A&[C@219IBOKTF"=O,+-=ZN7!/5[%4%^SY-,<K\D#DM_R.PYG=J$0T)9F@
M+$.<+&?6E7L9>&5 V>)/2C9BYQBIH3PR]J1.;J*9Y:@>D82$4DE@^+<F"Y(D
M2@GZ\;T6M9J<*G#W^$7]<SEX&,PC%F3!DK]H)..9=6ZAB"QQD<A[MOF5U /R
ME5[($E'^19NZK6.AL!"2I74P]""E6?4?/]<@=@) 9SC JP.\5P'^OH!1'3!Z
MG6&R)V!<!XQ+,M502@X!EG@^Y6R#N&H-:NJ@A%E&P_!IIG[W!\GA+H4X.;\*
MOQ=4T.HWR"(4P*\@))4%)^@CNHJB\A9.T$U633+5\'U )*:)^*":Y'E"280^
M982OMN@+9T5^ JW#4[CY[2% []]]0.\0S=#7F!4"<HBI+:'G*K\=UKU<5+WT
M]O1RA&Y9)F,!62(2#<0'^GC7TPC8@*SAYKUPN_:TB@&! 8[<$^0YWGAH0/KP
M6\R;<']H/#^<O3.:43,+1J7>Z =FP=^_06-T(TDJ_AGHZ76E/!Y65F7K4N0X
M)#,+ZI(@?$VL^<\_N1/GER%J)L4"0V(=HN.&Z%BG/K\N!%P1 @I;BS;"D@PA
MU$LU/_;>N::-/Y::(;$.-;^AYA]-[03*N @YS=7)$#VMY+$34-^_JT]?8'T@
M4M4Z2<(X8PF#0[5H<+2F@O$M4DEH2 0*69KC;#M$V5"G.Y0G#>6)=A0++&*4
M%SR,X8&)<@Y]'>):B4Q*$64?UO.)<^8X4WN]"TR;ZMBY9TBL0^6LH7*FI7(/
M%0]02'B6A0!HB(A6X-B9=M;#ZX]?TPT,9>P .6^ G.LG>QBR(I,"[%U(Z!H_
M)H/31"MR+)1*S-^!,O9[4 QE[$"Y:*!<Z-<.V @.9A5A(8@<LC+76H%C@5ST
M@'B3'A!#&3M 7*=UD,ZA><(+6#7D&5Y&!!EDHI<X%DJMMDMETJ=B*F<7RXZQ
M=O_;\LGQ=M_:T4L<C<7M87%'?2R&<G:Q>"T63XOE#QD3KED]^O"CD7@])+U'
M6& J99=(Z[U=K1&MB204/]($',^>!6349M=J!["\A7]V6P/MZFWO5XXC@G['
M*1@I9:_*\Q3SIV$^)CWPPJA:8$JM"[+UU*[_9B]WKE%S;50M,*76Q=J::%?O
MHN\Z!AKA)&$A5NY1,D0SB;,5A:H_/%E-FN:%VS?J([^WF-_"6KNMMW;UYOH3
M3+BTI%,(LBP2*'<P"1%;5F]Z'&ZTS'1/!Z,6_$"G1RBM/AJY/KRZ;X<Z%)CJ
M4)=K:]%=O4=?E%\("?]X3Y(2[\V!F6?4K1M5"TRI=5&VQMZ]>+LR:=3S&U4+
M3*EU/Y.V;P>>_NW@?Y3)6GFWL'FNT_L",=3,Z34+#JIU!]CZ?$_O\TV5-GV:
M8^?0@4Y/T)9@/EC1#D1>#$56Z.R=;0BH2:MR.T=]!8/7H&I'HKG:;!E=E1LE
M=MN\VF^ZQ7Q%,X$2LH10Y_0,GO6\VL*I3B3+RTV-1R:A ):',0&#R%4#N+]D
M3+Z<J 3-1MK\7U!+ P04    "   ,:):,I+=O]8#  #E$   &0   'AL+W=O
M<FMS:&5E=',O<VAE970V-"YX;6RU6&UOVS80_BN$5@PMT$8OMN0DLPTX]MH%
M6 LC2;</PSXPTMDB0HDJ2=G-O]^)DF795H4EE;_8HL1[>,_=Z?A0XZV03RH&
MT.1[PE,UL6*MLVO;5F$,"547(H,4GZR$3*C&H5S;*I- (V.4<-MSG,!.*$NM
MZ=C<6\KI6.2:LQ26DJ@\2:A\O@$NMA/+M78W[M@ZUL4->SK.Z!KN07_-EA)'
M=HT2L012Q41*)*PFULR]GKM!86!F_,5@JQK7I*#R*,13,;B-)I93> 0<0EU
M4/S;P!PX+Y#0CV\5J%6O61@VKW?H'PUY)/-(%<P%_YM%.IY8EQ:)8$5SKN_$
M]@^H"/D%7BBX,K]D6\UU+!+F2HND,D8/$I:6__1[%8B& >*T&WB5@7=L,/R!
MP: R&!BBI6>&UH)J.AU+L26RF(UHQ86)C;%&-BPMTGBO)3YE:*>GL_!;SA0K
M0YI&9(%!59KI7 +Y0.[+Y!*Q(DL)G*$#Q7"9RS#&V.%-%@*9<2Y":B#>+D!3
MQM4[-)YE&6<0D=]3D.MG\DF*/'M/;M/P A]^O5^0MV_>D3>$I>0A%KG"U=78
MULBI\,P.*_]O2O^]'_@_()]%JF.%JT00'=K;&(LZ(-XN(#=>)^!G*B_(P'U/
M/,?S6_R9=YLO(*S-AQWN#.K\# S>X'_D9W:4GW_^Q,GD5D.B_FV+7(D\;$<N
M^L.URF@($PL;@ *Y 6OZZR]NX/S61KLGL(,@#.L@#+O0IU^PG17=@*5K$M*,
M:<K;^)8@@0$IVM=F.K@:.6-[T^31N=(K>?@U#[^3QU)B^Y7ZV;QI@(G-L"'J
M-BHECM^@XOM'1#J7>B61H"82=!+Y)$2T9;PU"\&)ZP/7&UT=>=^)_TKO1[7W
MH^XT[-I79MH7W;]B;7Q&)WP")_"'1WPZ5WPEG\N:SV4GG[G9)D!^N -.-7;<
MVU33=,T>.;1VU$ZTE_:%GL .B%_5Q*_.UARO^@Q"3V '07"=_1;NO*B>R^T8
MZT +W%T[2Z%";E8W"D#GN&E6TYJMU7.;TPX];X@/M]/S!6Q02&;HZ@.$<2JX
M6#^WNMD)\])L]85V2-K;D_;.5K45=%^!Z GM,!![:>-VBH:?JMO!Z0;94K;G
M$"WN7K6XW;+E0=((R!>:@#([OAFCGGYJI]23,JFHGT/GN'NAX_KGJ_&>E$T5
MB'/H)'<OE-QNI?0S-1Z<ZEG_I,1[%5)VXR")@F)MSM>*A")/=7FFK._69_B9
M.;G:^^GE!P \1ZU9J@B'%9HZ%R/,@RS/U.5 B\P<2Q^%1O5B+F/ %T06$_#Y
M2@B]&Q0+U%\VIO\!4$L#!!0    (   QHEH2@>H%.P,  (<-   9    >&PO
M=V]R:W-H965T<R]S:&5E=#8U+GAM;+U7VV[;.!#]%4(+%+M $UU\2U+;@&.W
MNP':(DAZ>2CV@9'&-A&*5$DJKO^^0TJ6[4)FD4+(BRU>SN&<PZ$T'&^D>M1K
M $-^Y%SH2; VIK@*0YVN(:?Z7!8@<&0I54X--M4JU(4"FCE0SL,DBH9A3ID(
MIF/7=ZNF8UD:S@3<*J++/*=J>PU<;B9!'.PZ[MAJ;6Q'.!T7= 7W8#X7MPI;
M8<.2L1R$9E(0!<M),(NOYK$#N!E?&&STP3.Q4AZD?+2-FVP21#8BX) :2T'Q
M[PGFP+EEPCB^UZ1!LZ8%'C[OV-\Y\2CF@6J82_Z5968]"2X"DL&2EMS<R<U_
M4 L:6+Y4<NU^R::>&P4D+;61>0W&"'(FJG_ZHS;B !"/3@"2&I#\"AB> /1J
M0,\)K2)SLA;4T.E8R0U1=C:RV0?GC4.C&B;L-MX;A:,,<68Z2[^73+/*4I&1
M!9JJ#3.E G)&[JO-)7))WF(ON@89^:QA67+RWLZT(XY"X<"-,%2LV ,',M,:
MC"9_+\!0QO4_R#4K"LYPUEL!:K4E_RI9%J\1DYZ/0X-*;#QA6D=]746=G(BZ
M1SY(8=8:R3+(6O!S/SY./ 0A6MCXF.Q\O$Z\C!^H.B>]^#5)HF30%I ?OH"T
M@?<]X?2:;>TYOOX)OKG+'%!G=\#=INWW1K?9[66SKY(K7= 4)@&^*S2H)PBF
MK_Z*A]&;-JD=D1T)[S?"^XZ]Y\MGFXSOF& &SFR6MF7FM_<()#<&<OU_FR']
M+@WIB.S(D$%CR,";"?MS6U;GEN_.+=U9Q?;N4.=.FR'^589D"U2U >=^X&4;
M\$CHL!$Z]#(MX D_2@7J^03I6D@N5]LV(5Z6Y^YL1V1'@D>-X-&+I/JH2T,Z
M(CLRY*(QY.)%4MV_2O]TJGN!?RC^LA%_Z0WKDZ(9D(\T1\7V0^[:^/%^;)7H
MY7KNGG=$=B0[CO8%3/0BQZ!>IB-/NF([-N6@JHM?Y"C\9ID>R:LR*AZ0C&Y;
M#X6?XKE.A >E+M8W*W<#T"25I3!5U=OT-K>,F:NMP_WTZHJ")=N*"4TX+!$:
MG8_P2Z6JJK]J&%FXPOE!&BRFW.,:;TJ@[ 0<7TII=@V[0'/WFOX$4$L#!!0
M   (   QHEKJ L15/ ,  ) )   9    >&PO=V]R:W-H965T<R]S:&5E=#8V
M+GAM;*U6T6[3,!3]%2M,""2VI$F3MJ.-U'9#\ "J5L8>$ ]N<MM82^QB.RW\
M/==.&[KBE@GQDL3./<?G7-O7'FZ%?%0%@"8_JI*KD5=HO;[V?9454%%U)=;
M\<]2R(IJ;,J5K]82:&Y!5>F'09#X%67<2X>V;R;3H:AUR3C,)%%U55'Y<P*E
MV(Z\CK?ON&.K0IL./QVNZ0KFH._7,XDMOV7)605<,<&)A.7(&W>NIP,3;P.^
M,-BJ@V]BG"R$>#2-#_G("XP@*"'3AH'B:P-3*$M#A#*^[SB]=D@#//S>L[^S
MWM'+@BJ8BO*!Y;H8>7V/Y+"D=:GOQ/8][/S$AB\3I;)/LMW%!A[):J5%M0.C
M@HKQYDU_[/)P $ >-R#< <)C0/<$(-H!(FNT469MW5!-TZ$46R)--+*9#YL;
MBT8WC)M9G&N)?QGB='I+)6=\I<@,))D75 *Y)'-<*WE= A%+X@CXP+.RSK&3
MW+"R-M- ;I=+G!<3/]<B>R3C+96Y(J]N0%-6JM=(>C^_(:\N7I,+XA-E>!1A
MG-QSIM6;@X[/A:@5Y3EV7CQI#WV-?HUJ/]MYFS3>PA/>(O)1<%TH<LMSR)_B
M?<Q3FZQPGZQ)>);P(Y57).J\(6$0Q@X]T^?#NV?D1.W<198O>O[<?1TOE):X
M-[ZYTM70==UTIEY<JS7-8.1A05 @-^"E+U]TDN"MR^M_(GOBO-LZ[YYC3S]A
M><-5*"IPV6RPB<6:*K9)PZ0?=X;^YE"_(ZH7=7IMU!-A<2LL/BOLP98-R"_I
M!B160<+K:H&S@QL#BPW+]@L=ZZG2N*K-)LIK:5ZZ +(&R43N\M0,&Q^H[?3C
M(#GRY(KJQ2<\):VGY*RG=I-#N\F5W>34;G*7VN1/'4'O2*LCIC]P*^VU2GO_
MFOW<F(#\G_/?<ZA-.M&1)U?4H)NX7?5;5_VSKB9VX=S.YBY=#;1_..)5-SZ2
MY0PZH6K0JAK\?55@0D_H&KB&[![I^DM0H\L_.-PJD"M[YBN2B9KKIG2WO<VU
M8H+7"GO\'O7C=6-L3UG_-TUS5\'"O&)<D1*62!E<]7 &97/^-PTMUO8(70B-
M![+]+/#*!-($X/^E$'K?, .TE[#T%U!+ P04    "   ,:):36E6E'@"  #A
M!0  &0   'AL+W=O<FMS:&5E=',O<VAE970V-RYX;6RM5%UOFS 4_2L6DZ9-
MZFH"Z><(4I)V6A\J18VV/;MP"5;]P6P3NG^_:T-8VJ71'O8"MKGG^)S+O3?K
MM'FR-8 CSU(H.XMJYYIK2FU1@V3V5#>@\$NEC60.MV9#;6. E0$D!4WB^)Q*
MQE649^%L9?),MTYP!2M#;"LE,[\6('0WBR;1[N"!;VKG#VB>-6P#:W#?FI7!
M'1U92BY!6:X5,5#-HOGD>CGU\2'@.X?.[JV)=_*H]9/?W)6S*/:"0$#A/ /#
MUQ:6((0G0AD_!\YHO-(#]]<[]B_!.WIY9!:66OS@I:MGT65$2JA8*]R#[K["
MX.?,\Q5:V/ DW1 ;1Z1HK=-R *,"R57_9L]#'O8 R',8D R Y#5@^@8@'0!I
M,-HK"[9NF&-Y9G1'C(]&-K\(N0EH=,.5_XMK9_ K1YS+;YE17&TL68$AZYH9
M()_(O"RY3S(3Y$[UE>)3_N$&'./"?L00ZT-M1AUJ\$RT&.Y;]/<E;]R7DGNM
M7&W)K2JA?(FGJ'TTD.P,+)*CA/?,G))T<D*2.#D[H&?Y[_#I$3GIF,\T\$W?
MX'L ZPPO')1D[73Q1.8=,^7!1!TE\MU[;1M6P"S"]K1@MA#E[]]-SN//AUS^
M)[(7GJ>CY^E1SW/E>,E%ZQN26"A:@]4#EL!S(5K\RZ0R6I)"RZ9U?27IBL"N
M\!HLO%!-)X1)W2IW*%>]@+,@P ^F;7YQ=7F>9G2[GX2_HR;Q53P9HWIW=*];
M))A-&"(6]>'=?=V-I_V<6N"<"OW\ZASGUSRT+?U#TP\_K*H-5Y8(J) R/KU
M3:8?*/W&Z2;TY*-VV.%A6>,,!N,#\'NEM=MM_ 7C5,]_ U!+ P04    "
M,:):_#<M0+H$  !3'@  &0   'AL+W=O<FMS:&5E=',O<VAE970V."YX;6RU
M66MOXC@4_2M6=K2:D=HF=GAV :E#MYI*K:9J.[.?W7 !:Y*8M1WH2/OCUPEI
M'FTPA+I?((%[CWVN3ZQSG=&&BU]R":#0<Q3&<NPLE5J=NZX,EA!1><97$.M_
MYEQ$5.E;L7#E2@"=94E1Z!+/Z[D19;$S&66_W8G)B"<J9#'<"223**+B]U<(
M^6;L8.?EAWNV6*KT!W<R6M$%/(#ZL;H3^LXM4&8L@E@R'B,!\[%S@<^G?I:0
M1?QDL)&5:Y12>>+\5WIS/1L[7CHC""%0*0357VN80ABF2'H>_^:@3C%FFEB]
M?D&_RLAK,D]4PI2'_["96HZ=@8-F,*=)J.[YYAODA+HI7L!#F7VB31[K.2A(
MI.)1GJQG$+%X^TV?\T)4$G!G1P+)$\BA"7Z>X&=$MS/+:%U212<CP3=(I-$:
M+;W(:I-E:S8L3I?Q00G]+]-Y:G)%F4 _:9@ .D4/6B2S) 3$Y^B*Q30.& W1
M=2R52/32*8EN@<I$P Q1A2JI>CWN(4B$8/$"?:622?3Y$A1EH?RB<<O(DTK<
M*?KQ<(D^?_J"/B$6H\<E3R2-9W+D*DTLG9X;Y"2^;DF0'21NJ3A#/CY!Q"/=
MAO2I.?T2@B*]4T]W=3F+FI*BIB3#Z^S NXX5") *W5,%Z&%#5^@_="=@1=D,
M_?VLGT )$FFJZ+M:@D!371!=770A):A&^L;QTB?]7*YH &-'/\H2Q!J<R9]_
MX)[W5U,Q+('52N,7I?$S=']':;84SYLX^C8Y6@*K<>P4'#O&Y=]R/$&/7-&P
MB>DVO9>EI]OL>H*'_9&[KA)X&S-(I;UNF%>WF%>WO2RW"MRM/"-DVU6Q!%9C
MWRO8]XY57L\F1TM@-8[]@F/_?<HSIK=EN@7K5F5,ALT2'10$!NTE>A$$(@'C
MSGG#Z!,+F6+0*&+CH&UI6P*KU6=8U&=H%'&%9Z.2AS:)6@*K$<5>Z4L\HQ0J
M5 V"SD&J(B0=[]5>VA"$=^REN.*;\+&[Z0V/%Z>/(*)]NC0/T7:];*'5"U*:
M'DS>I4ULU<380JN3+6T,-CJ(0]7IOQ5>'_=>R[,AJNOOT&=I0K#9A4QYM*+Q
M;_1]$^N]\X;-(37RB="F'M =#UF@YWZ  3 /TWK9+*'5BU(Z(-P]U@1@JT['
M%EJ=9^EUL-%F[#<">7YMWR1#\MJ%-H7YN-_9(<[2IV"S4;F!-82(:/G9[Y7,
M0[=>2$MH]4*5?@@/CA:L55=C"ZW.L_0UV.@F#A#L\.TF^:9I:@C:V361THF0
M/4[$+-9]&Z@9O77S;@FM7HO2]1!\K!Z)53-C"ZW.LW*"8S["V:M'<WYKMN3P
M7HJ4)H7L,2EFX;Z_KS*/W[H('W%H0TK#1#KO\J_$JA&RA58G6QHA8CX+.LR_
MYB#F[JHA:%=W14H#0\P&YJ ]]^ ^RSQ8ZZ7[B",>4GHGTG^?3JWZ'UMH=;*E
M_R'F Z$#=3HXI,]JBMK59Y'2N1"S<RF5:JOC,@_8>@$_XAC'+\V3[QU]X&_5
M&-E"J_,LC9%O/@[::QCR_.J)?E/'U136T'&YE3=^Z>O66RH6+)8HA+G.\\[Z
M6N5B^P9S>Z/X*GL)^,25XE%VN00Z Y$&Z/_GG*N7F_2]8O$>>?(_4$L#!!0
M   (   QHEJMU@B*D@(  (H(   9    >&PO=V]R:W-H965T<R]S:&5E=#8Y
M+GAM;*U6:V_:,!3]*U963:VTD0>OEH5(;= TI%:JBKI]F/;!)!>PZMB9?8'V
MW\].0@1MB-8-/A _[CD^Y_K&3KB5ZDFO ) \9USHL;-"S$>NJY,59%1W9 ["
MS"RDRBB:KEJZ.E= TP*4<3?PO(&;42:<*"S&[E44RC5R)N!>$;W.,JI>;H#+
M[=CQG=W  UNNT ZX49C3)<P '_-[97INS9*R#(1F4A %B[%S[8_BH8TO KXS
MV.J]-K%.YE(^V<XT'3N>%00<$K0,U#PV$ /GELC(^%UQ.O62%KC?WK%_+;P;
M+W.J(9;\!TMQ-78N'9+"@JXY/LCM-ZC\]"U?(KDN_LFVBO4<DJPURJP"&P49
M$^63/E=YV /XO2. H ($?POH5H!N8;145MB:4*11J.26*!MMV&RCR$V!-FZ8
ML+LX0V5FF<%A%,LL8VBV!36A(B6Q%,C$$D3"0)//Y#I-F<TWY60JRJ*QV3^?
M %+&]84)>9Q-R/G9!3DC3) [QKD)T*&+1IU=PTTJ)3>EDN"(DCNJ.J3K?R*!
M%_0;X'$[? ))#>\=PEV3DSHQ09V8H.#K'N&[E5J_RL;/6Q-#I@B9_M7DKR3L
M-1/:UW&D<YK V#'OFP:U 2?Z^,$?>%^:W)Z([,![M_;>;6./;@$1E"9R01(%
MI@":W)845P6%/2LVD=\9A.YFWT3K,O]HHE>;Z+6:F*&IY_D+V3,3'S732O7>
MK3L1V8'K?NVZ?^JR[9_2^XG(#KP/:N^#_R_;DL(/6NMVT%K;!^*&M;CA^\21
MY9HJ*A"@\; <OI%P^49F4XQ_=?![)=K=NRGL+6T.W243FG!8& ZO,S3[I\J;
MK^R@S(O+8R[17$5%<V4^%D#9 #._D!)W'7L?U9\?T1]02P,$%     @  #&B
M6I.WWU>P P  &0H  !D   !X;"]W;W)K<VAE971S+W-H965T-S N>&ULK59M
M;]LV$/XKA H4'>!9?HV+U!:0.-E:H&Z,I-T^%/M B2>+B$2J)&4G_WYWE*+9
MG:)FQ0##$JF[YYY[>"1O>=#FWF8 CCT4N;*K('.N/ ]#FV10<#O4)2C\DFI3
M<(=#LPMM:8 +[U3DX60T.@L++E40+?W<UD1+7;E<*M@:9JNBX.;Q$G)]6 7C
MX&GB5NXR1Q-AM"SY#N[ ?2FW!D=ABR)D <I*K9B!=!5<C,_7"[+W!G](.-BC
M=T:9Q%K?T^"#6 4C(@0Y)(X0.#[VL(8\)R"D\:W!#-J0Y'C\_H3^F\\=<XFY
MA;7._Y3"9:O@;< $I+S*W:T^O(<FGSGA)3JW_I\=&MM1P)+*.ETTSLB@D*I^
M\H=&AY<X3!J'R7<.X]DS#M/&8>H3K9GYM*ZXX]'2Z ,S9(UH].*U\=Z8C52T
MBG?.X%>)?BZZ@QVNB6,?5%T1).VO[$((2:\\/_GPY@H<E[G]!4T:QV7HD 5A
MA4D3\;*..'DFXI1MM'*99==*@#CU#Y%]F\+D*87+22_@AILAFXX';#*:S#OX
MK%_N/NNA,VT5G7J\Z0\4O852&R?5CGV]B*TS6+!_=:E5H\VZT6@3G]N2)[ *
M<)=:,'L(HM>OQF>C=UVI_D]@)XG/VL1G?>C1IZJ(P3"=LIL2#/>I-V+8KL1K
MM+E'H\-F'XV7X?XXFSZ+$XKSEN+\A13KU>%Q#KT<YS_DV&=QPO&LY7C6R_%?
M]3-@ZYNKS0!WHI![*2K<E)^E0^)<";;5UN]4I@W[W>BJ9)]X >SK]8.CHY;R
MNU95X==#J\X"[*=CC3M?9Q+2ZP=(*CIS;])4)F V0%IV%6$OX$\6X:)5;_%S
MZFV-3J5C;SYJB^?7!KBM# S8>X3_8D$,V!78Q,B29.I2J3_LYPQ\',:M!?HQ
MVQ#!K> /4)6 OV\$P\5*M+(ZEX(['"N\JZ5*-"X;MW@S$O':S!&J+DJN'E^_
M>CL9+][94U?K\.&+EVH:(5#1C-9]#PWDD+74*J+U7&2G&>QY7N%\9]CC-/@.
MNP/K6%R)'6!HJD,!B13 #AF@MR$X#.>12B^\I2FI]F II/\05Q95M'; 2O[(
MA#XH1(G=@"2H3)*A6)B@3NX; RI^4 +ML=;3"H/RY%LEZ_JWPZY*[%VT_UJ)
MX=$MBQMJYYL/4K12KKZMVMFZO[G$_L;W =_-8]]SX:_[\!^8NFG"NVB'TK(<
M4H0<#1=XKIBZ$:D'3I?^+H^UP\[ OV;8NX$A _R>:NV>!A2@[0:COP%02P,$
M%     @  #&B6O_*SY_=!   /!,  !D   !X;"]W;W)K<VAE971S+W-H965T
M-S$N>&ULK5AMC^(V$/XK5GJJ]J2]39P70B@@[<*=NE*O72V]]L.I'TQBP+HD
MYFP']OKK.TY"",%DNQ)?(+%G)L_,>.:Q/=YS\4UN*%7H)4MS.;$V2FU'MBWC
M#<V(O.-;FL/,BHN,*'@5:UMN!25)J92EMNLX SLC++>FXW+L24S'O% IR^F3
M0++(,B)^/-"4[R<6M@X#SVR]47K GHZW9$T75'W9/@EXLQLK"<MH+AG/D:"K
MB76/1W.W5"@E_F)T+UO/2+NRY/R;?GE,)I:C$=&4QDJ;(/"WHS.:IMH2X/A>
M&[6:;VK%]O/!^J?2>7!F222=\?1OEJC-Q!I:**$K4J3JF>]_I;5#@;87\U26
MOVA?RSH6B@NI>%8K X*,Y=4_>:D#T5+ W@4%MU9PNPK!!06O5O"Z"OX%!;]6
M\,O(5*Z4<9@31:9CP?=(:&FPIA_*8);:X#[+==X72L L STU7= U9%&AQ[Q:
M0SH7'] "EE=2I!3Q%3I(/-,=S0MZBQ9LG;,5BPD,'B8_OL!"E%3>(I(GS>B3
MX"NFT,V<*L)2^1XL?UG,T<V[]^@=8CGZ<\,+"0IR;"OP12.RXQKWK,+M7L#M
MH<\\5QN)/N8)34[U;8A!$PCW$(B9VVOP,Q%WR,.WR'7<P(!G_O_5_1XX7I,7
MK[3GO9*79[KE0K%\?9*AK[^!.'I4-)/_F&)7V?;-MG4K&<DMB>G$@EXAJ=A1
M:_KS3WC@_&)R_$K&3L+@-V'P^ZQ/ZT5G\K%2')2*NKOMIOXP'.#AV-ZUT1O$
M(M_W!HW8":Z@P17TIZ=5 [).%:UK8&1"&UPS(U<R=N+YH/%\T)N1.1/0LE%*
MEER4Q2YH2A1-T$K *J4HYE(9Z[DR&[02@2,<>4XG7R8QQW$]<[["!G78BWI1
M+&/H%P)HA@M9XN9J0P5**G<NH@[/X6!G@-T.:H.8ZP38,:,>-JB'O:@?\QJ>
MQ@M<F>H^<%AF)K3#<Q@>'D:X@]8@YD9.Y)O11@W:J']E4%AN,:LZE$9,,MVZ
M_BT'3&BC<QA^& 4=L 8I;S@(S%BQ<^0]YY78*@K5T92MD8*<LV^'?FLI5@ -
M4D//C2X ;!$S[@4(Y+ECY?8*^CZP9<PSBA1Y,6>^-M8&X>&@6UP&J=#!EZ"Z
M1ZAN+]0_RE+J]$%T4V%^;X#[\(K!K]A(:[56&WXT&'1]/!?Z@$,77W#R2,BX
ME^BFO\,FO/+(",T[^ZH[& ;=RC.)A1X.+X [TB3NY\FSVKM_I?;Z[;V5D*YE
M[=3[(QGC*[,QOBH=7\O:J?='0L:O,/);^RX^Y]C .]LXF:2"\ )'X",1XWXF
M;B],?;R /DSR-5O"8>->2JHDNH^_%T![B3XA/!02]*5$,YXM65YJF?M?[U??
MG-$K63N-T9'V\?#*Z[EW'_%F[Z]D[=3[XS8"7WD?4=MK[_$C/PR[Z_E<:NA&
M%VC!U?N(TY$C<;O]Q WDA?H94?-(6B14PD.]"ZEF;C774\@^'/V%H'G\XZ!;
M':S7A.723CD4BD00G83)+9?L4$ND+* [4Q;LUA5!1L6ZO&J1L.\M<E4=QYK1
MYCKGH;S$Z(S/\&B.#>/WKC.:0=A,,QAFJHN<XZ>K>R4X-J_!)932%<!P[D)H
M-Z*ZJJE>%-^6EQ=+KA3/RL<-)0D56@#F5YRKPXO^0'-A-OT/4$L#!!0    (
M   QHEH+=HUH0 ,  "84   -    >&PO<W1Y;&5S+GAM;-U876_:,!3]*Y&[
M3JTT-4!&("L@;4B5)FU3I?9A;Y4A#EARG,PQ'?37S]<.X:.^B/5A+0MJ8]_C
M<^ZQ?4/<#BJ]$NQNSI@.EKF0U9#,M2X_A6$UG;.<5E=%R:1!LD+E5)NNFH55
MJ1A-*R#E(NRT6G&84R[):" 7^4VNJV!:+*0>DEX3"MSM:SHD[?@C"9S<N$C9
MD#Q<O/^U*/3UN\#=SSZ<G;4>+J_WXQ<6N"2A5[1[A.A5JX4+ XB)Q\>)']+&
MI'M'21]0QH3[N\)K'^=&JC%UCI$3#WG#Q&B]EC?G5D9+#.LR&0VR0FZJ)2(N
M8)1ISH)'*H9D3 6?* ZLC.9<K%RX X%I(0H5:%.F)E4;(M63@]NN!Q5<Z^1<
M%LKF=AG<[TD]? ]8]\ @%Z(QV"$N,!J45&NFY(WIV,$V^ P*ZO;]JC0.9XJN
MVITNV1#LS229%"IEJDG3)NO0:"!8!G84G\WAKHLR!%#K(C>-E--9(:GUL&;4
M#2,[94+<P>/],]O17F9;>V9W3#9-8ZAN.AG7 ?UM-:>]+1N]2#<H^6.AORS,
M=*3M0V&S6\4ROK3]9=88P-3;N#HM2['Z+/A,YLQ-_NB$HP%=\X)YH?B3R0:E
M,C4!IDCPR)3FT^W(;T7+>[;4ZW):9KCGS@EZ_K?K/&.2*2JV39O:?\NK_&+'
M4>^U+-MOE7W#7H_U._NMF^R>@LGX%$R>1$WV3\%D<@(F>Z_VK7G09%B?,K:.
M,CL'F28:P(%Q2'[ T5-LD@:3!1>:R[HWYVG*Y+/SC)'7=&+^"-K1-^-3EM&%
MT/<-."2;]G>6\D6>-*-N82'J49OV-YA>.VY.JR87ERE;LG1<=]5L8IN!:9BL
M]06$?>3&7GX$XSC,CP"&Y<$<8!S'PO+\3_/IH_-Q&.:M[T7Z**>/<AS+AXSM
M!\OCYR3F\L\T2:(HCK$5'8^]#L;8NL4Q_/C5,&_ P/) IK];:WRW\0HY7 ?8
MGAZJ$&RF>"5B,\77&A#_N@$C2?R[C>4!!K8+6.U ?G\>J"D_)XI@5S%OV!.,
M(TF"(5"+_AJ-8V1U8OCX]P=[2J(H2?P(8'X'480A\#3B".8 /&!(%-GWX-[[
M*%R_I\+-?P9'?P!02P,$%     @  #&B6I>*NQS     $P(   L   !?<F5L
M<R\N<F5L<YV2N6[#, Q ?\70GC 'T"&(,V7Q%@3Y 5:B#]@2!8I%G;^OVJ5Q
MD L9>3T\$MP>:4#M.*2VBZD8_1!2:5K5N %(MB6/:<Z10J[4+!XUA]) 1-MC
M0[!:+#Y +AEFM[UD%J=SI%>(7->=I3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W
M\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8%II%R=.B':5_'<?VD-/IKV,BM'I;Z/EQ
M:%0*CMQC)8QQ8K3^-8+)#^Q^ %!+ P04    "   ,:):8Q+GHGT%  #-+@
M#P   'AL+W=O<FMB;V]K+GAM;,6:;5/J.!2 _TJ&+^O.+(OTS7L==88KN#*C
MP%C6KSNQ#9"Q3=RDZ/7^^DU;T0.&,_OER"?H"^'I:7J>DZ1G+]H\/FC]R'Z6
MA;+GG555/9WV>C9;B9+;/_634.[(0IN25V[3+'OVR0B>VY4055GT@N/CI%=R
MJ3H79YNV9J8'-W0ELDIJY7;6.^ZE>+$?Q^M-]BRM?)"%K%[/.\WW0G18*94L
MY2^1GW>..\RN],NU-O*75A4OTLSHHCCO]-L#]\)4,ONT.ZTAY_S!-GLJ_G#'
M'<AY)SEV#2ZDL55S1M,^=XS/PIW<;JTK?26+2I@AK\1?1J^?I%K6S;BKZ('+
M:.*P^6R#>&K^3QCU8B$S,=39NA2J:N-H1%$#*KN23[;#%"_%>6=S"ANHG(U4
MY8+$QJIMRIU;7ZG[ZW'>7G7E<$$,S:ET!\PX;\#I("^GDW1Z,QX.YJ,A^S&X
M&4PN1RR]'HWF*3OZ>P(@ P0R."#D/P& #!'(\ LAT[G[N!U-'.#TBEU.;V<
M,D(@HX-!IO/I)8",$<CX<)$<I-< ,D$@$UK(&7]ESY;-A&E^KC+!AM)FA;9K
M(P#B"8)X0HLX5E;FPK"YX;E+@FQ@#%=+4?_* L)O".$W6L(?W$K+](+-C+#N
MU-W$^!U!^TZ+=B=L9616B9Q=<KN"V?H82]?'Q,^&LZAQRF-W(A/RF;M_MW^P
MB:@@(.H38J'<"&X%[%Y]3!Q]8G,,Q<-69# _](D%<2>>A5J+^L[II9*[-0!F
MA3ZQ%H;"N+Y4UU&N0G']OCG?,NX*EVN1+R$FYH4^L1C&*M.E8'/^<[N'81KH
M$WL@K73VN-*%2[3V-S;Z=^W*/,B&Y?\^L0 :MNZ#>R!=$M.E:\E^*CVQ[-\G
M3O^#S(7+-D]"T]>&K@-:5R=O&[2/6:!/K($1-\JYLQ$]2U=\BRS 3! 0F^"*
M2\/N>;'>(L)2?T ]EM!E*:N/U%&[RL5.J$QN/:\!.I0@-D(JELV@S#\2"S!!
M!,2"\%9#[&BF"[D;04P6 ;$L=BHC=C1OJI#?(1]FB8!Z^+"O1&I)(28FCH!8
M'&VAY(T>YHR V!EUQ>2%PD01$(O"4SIY&3%3!,2F@,6)#R[$9!$2R\)7I7@A
M,7^$Q/[85ZZ\@4),S" AL4&0JJ4FA9CH=!2Q33Y7+MX;CIDD)#;)1PGC1<,D
M$A)+Q%,F>!DQ@X3$!O'7"UTVR/.Z=T),S"@AL5%VZX5ND\9=45A(OH.).28D
M=LS^LJ'+TG4),3'-A,2:03 =)<2,,.%$AYJGJJ.Y-64?8<J)R(<L&&8(,3'E
M1-0+("AF!#$QY4342R (IDM*$!-= R'6SEOE_9XH%2_V# <C3$$1L8+>,>OG
MFIO7.M-?K9LRXU8J"3$Q"T7$%FH&# [2-96O"U%3MF.(H:BXA,.M"+-0]!7C
MFGVWG!U!3,Q"$;&%/-%\N^?-+HB)62@B7QWY/"#KU@M@?+DT DX8QYB%8F(+
M^3'?@PLQ,0O%Q!;R8[YW58B)62@FMA"*N>7T&+-03&PA=#%C&Q.S4$QLH:WY
M@BX;+18B>X.N#T!,="W^"]=<//D38F(6B@^P#.-PZVD$K01T>HQ9*/Z*%9E]
MF-M]$[-03&RA/9B;FP\Q,0O%Q!;:@[FIE^"+(IB%DJ^8?//-:[41A9B8A9)#
M3;^UQH28F(62 TZ_N8!"3,Q"";&%<,P48F(62H@MA&)N):0$LU!";"'/9"8L
MDB$F^DX8L86\F!_*A)B8A1)B"X%YUYVAAE1<91 3LU!"/B.'K">S+L3$+)10
M6\@S5>ROWD\P"YU06\B+Z1L+G6 6.FG?I&Y.MA=GN5A()?*)^POK]F>\R&:&
MU1_MNU]17+^^L5@7Q:7;-U4WFN>;M[$W;Y)?_ =02P,$%     @  #&B6K %
M +TV @  '"H  !H   !X;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L<\W:2VZC
M0!2%X:U8+""X[HND%6?4DTRC;  YY8=B&T312K+[MIR!?5 />A)Q1JA 7'XQ
M^(2 QY=\:,=]=RJ[?5\6G\?#J:RJW3CVO^JZK'?YV):[KL^G\Y%--QS;\;P<
MMG7?KM_;;:YEN8QZN)U1/3W>SER\?O7Y?R9VF\U^G7]WZS_'?!K_,;C^Z(;W
MLLMYK!:O[;#-XZJJ/P_7W:6^;-+=>7*U>'Y;5</S6ZKJN8,$@F3^((4@G3_(
M(,CF#W((\OF# H)B_J &@IKY@^XAZ'[^H <(>I@_*"U1QB5!T@1K JT3<IT(
MO$X(=B(0.R'9B<#LA&@G K43LIT(W$X(=R*0.R'=B<#NA'@G KT%]18"O07U
M%@*]9?*P3:"WH-Y"H+>@WD*@MZ#>0J"WH-Y"H+>@WD*@MZ#>0J"WH-Y"H+>B
MWDJ@MZ+>2J"WHMY*H+=.7I80Z*VHMQ+HK:BW$NBMJ+<2Z*VHMQ+HK:BW$NBM
MJ+<2Z&VHMQ'H;:BW$>AMJ+<1Z&VHMQ'H;9.7W01Z&^IM!'H;ZFT$>AOJ;01Z
M&^IM!'H;ZFT$>COJ[01Z.^KM!'H[ZNT$>COJ[01Z.^KM!'K[Y&,E@=Z.>CN!
MWHYZ.X'>CGH[@=Z.>CN!WH%Z!X'>@7H'@=Z!>@>!WH%Z!X'>@7H'@=Z!>@>!
MWC'YV81 [T"]@T#O0+V#0.] O8- [P;U;@CT;E#OYB?U+N/7(9=KS_<:K_^3
M5(_G<_/U\I?E]\[)3;C@7-]6E*>_4$L#!!0    (   QHEKART;(_0$  #TI
M   3    6T-O;G1E;G1?5'EP97-=+GAM;,W:34[#,! %X*M4V:+&]6\!43;
M%EAP 9-,VZA);-D&RNUQ4D "004J$F_3J+4];^*1OE7/[IX]Q<FV:_NX*-8I
M^5/&8K6FSL;2>>KSRM*%SJ;\-:R8M]7&KHB)V<RPRO6)^C1-0XWB_.R2EO:A
M39.K;?XY-JY?%(':6$PN=AN'K$5AO6^;RJ:\SA[[^E/*]#6AS"?'/7'=^'B4
M-Q3LRX1AY?N UW,WCQ1"4]/DUH9T;;N\BVU;%M-S2['<7^*+'MURV514N^JA
MRT?*Z /9.JZ)4M>6NZ)'^Y-3OF':??*#\\<R^P+SSMO@?,P3"_3[N+>1#*>G
M/A>BD)K]K_B>F$L?_'XT3+NF^H?9^7J?7-B,\XAL?!Q^QQ]G_%[_EWT(D#XD
M2!\*I \-TH<!Z6,.TL<Q2!\G('WP&4HC**)R%%(YBJD<!56.HBI'896CN,I1
M8.4HL@H4606*K )%5H$BJT"15:#(*E!D%2BR"A19!8JL$D56B2*K1)%5HL@J
M4625*+)*%%DEBJP215:)(JM"D56AR*I09%4HLBH4616*K I%5H4BJT*15:'(
MJE%DU2BR:A19-8JL&D56C2*K1I%5H\BJ4635*+(:%%D-BJP&15:#(JM!D=6@
MR&I09#4HLAH460V*K',46>?_*>N]<YL_CA^?96>;_BV?C?^:/'\!4$L! A0#
M%     @  #&B6D;'34B5    S0   !               ( !     &1O8U!R
M;W!S+V%P<"YX;6Q02P$"% ,4    "   ,:):=*(1.O0    K @  $0
M        @ '#    9&]C4')O<',O8V]R92YX;6Q02P$"% ,4    "   ,:):
MF5R<(Q &  "<)P  $P              @ 'F 0  >&PO=&AE;64O=&AE;64Q
M+GAM;%!+ 0(4 Q0    (   QHEH5^\+MNP4  ,,>   8              "
M@2<(  !X;"]W;W)K<VAE971S+W-H965T,2YX;6Q02P$"% ,4    "   ,:):
MX6X5(- '  !Y(@  &               @($8#@  >&PO=V]R:W-H965T<R]S
M:&5E=#(N>&UL4$L! A0#%     @  #&B6H[-HL L P  20H  !@
M     ("!'A8  'AL+W=O<FMS:&5E=',O<VAE970S+GAM;%!+ 0(4 Q0    (
M   QHEHK;1-1%04  ,83   8              " @8 9  !X;"]W;W)K<VAE
M971S+W-H965T-"YX;6Q02P$"% ,4    "   ,:):-)/6WG@'  #\.0  &
M            @('+'@  >&PO=V]R:W-H965T<R]S:&5E=#4N>&UL4$L! A0#
M%     @  #&B6O9@H'=6"   ZR0  !@              ("!>28  'AL+W=O
M<FMS:&5E=',O<VAE970V+GAM;%!+ 0(4 Q0    (   QHEH5<;SA2P(  *$%
M   8              " @04O  !X;"]W;W)K<VAE971S+W-H965T-RYX;6Q0
M2P$"% ,4    "   ,:):$ZV'ZT0"  "*!@  &               @(&&,0
M>&PO=V]R:W-H965T<R]S:&5E=#@N>&UL4$L! A0#%     @  #&B6B"Y%/Q"
M"P  >1\  !@              ("! #0  'AL+W=O<FMS:&5E=',O<VAE970Y
M+GAM;%!+ 0(4 Q0    (   QHEKX<!4 1 ,  'P'   9              "
M@7@_  !X;"]W;W)K<VAE971S+W-H965T,3 N>&UL4$L! A0#%     @  #&B
M6FR;1N@6!@  C!0  !D              ("!\T(  'AL+W=O<FMS:&5E=',O
M<VAE970Q,2YX;6Q02P$"% ,4    "   ,:):R#.&?TP#  !C!P  &0
M        @(% 20  >&PO=V]R:W-H965T<R]S:&5E=#$R+GAM;%!+ 0(4 Q0
M   (   QHEKDA^>ZC@0  ",+   9              " @<-,  !X;"]W;W)K
M<VAE971S+W-H965T,3,N>&UL4$L! A0#%     @  #&B6NJI;[,4!P  E1
M !D              ("!B%$  'AL+W=O<FMS:&5E=',O<VAE970Q-"YX;6Q0
M2P$"% ,4    "   ,:):-$WU[S #   O!P  &0              @('36
M>&PO=V]R:W-H965T<R]S:&5E=#$U+GAM;%!+ 0(4 Q0    (   QHEK50WXJ
M( 4  ((+   9              " @3I<  !X;"]W;W)K<VAE971S+W-H965T
M,38N>&UL4$L! A0#%     @  #&B6AS_ZON4!0  F X  !D
M ("!D6$  'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6Q02P$"% ,4    "
M,:):2=%DX0<$  "Y"   &0              @(%<9P  >&PO=V]R:W-H965T
M<R]S:&5E=#$X+GAM;%!+ 0(4 Q0    (   QHEIHY3,\; 4  $4,   9
M          " @9IK  !X;"]W;W)K<VAE971S+W-H965T,3DN>&UL4$L! A0#
M%     @  #&B6@]R (UE P  F@<  !D              ("!/7$  'AL+W=O
M<FMS:&5E=',O<VAE970R,"YX;6Q02P$"% ,4    "   ,:):<""^6V<#  !R
M"0  &0              @('9=   >&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM
M;%!+ 0(4 Q0    (   QHEK5+B9QR ,  &\(   9              " @7=X
M  !X;"]W;W)K<VAE971S+W-H965T,C(N>&UL4$L! A0#%     @  #&B6JSQ
M531M!0  GPL  !D              ("!=GP  'AL+W=O<FMS:&5E=',O<VAE
M970R,RYX;6Q02P$"% ,4    "   ,:):YW(?U-$)  !T&P  &0
M    @($:@@  >&PO=V]R:W-H965T<R]S:&5E=#(T+GAM;%!+ 0(4 Q0    (
M   QHEJ)'<8<O@(  . &   9              " @2*,  !X;"]W;W)K<VAE
M971S+W-H965T,C4N>&UL4$L! A0#%     @  #&B6D,I[P;&!0  +!0  !D
M             ("!%X\  'AL+W=O<FMS:&5E=',O<VAE970R-BYX;6Q02P$"
M% ,4    "   ,:):%M) SA\#   ;!P  &0              @($4E0  >&PO
M=V]R:W-H965T<R]S:&5E=#(W+GAM;%!+ 0(4 Q0    (   QHEKB,AC)A ,
M ,$(   9              " @6J8  !X;"]W;W)K<VAE971S+W-H965T,C@N
M>&UL4$L! A0#%     @  #&B6JCZ:YS@!   .@L  !D              ("!
M)9P  'AL+W=O<FMS:&5E=',O<VAE970R.2YX;6Q02P$"% ,4    "   ,:):
M(R;]6!$#  "5!@  &0              @($\H0  >&PO=V]R:W-H965T<R]S
M:&5E=#,P+GAM;%!+ 0(4 Q0    (   QHEHC6M1R%P4  +X-   9
M      " @82D  !X;"]W;W)K<VAE971S+W-H965T,S$N>&UL4$L! A0#%
M  @  #&B6A_,<]?F @  +08  !D              ("!TJD  'AL+W=O<FMS
M:&5E=',O<VAE970S,BYX;6Q02P$"% ,4    "   ,:):2)G.BB\#  !O!P
M&0              @('OK   >&PO=V]R:W-H965T<R]S:&5E=#,S+GAM;%!+
M 0(4 Q0    (   QHEJE$D9M P,  -4&   9              " @56P  !X
M;"]W;W)K<VAE971S+W-H965T,S0N>&UL4$L! A0#%     @  #&B6K)Y;2AR
M P  H0D  !D              ("!C[,  'AL+W=O<FMS:&5E=',O<VAE970S
M-2YX;6Q02P$"% ,4    "   ,:):GMLM IL#  "Q!P  &0
M@($XMP  >&PO=V]R:W-H965T<R]S:&5E=#,V+GAM;%!+ 0(4 Q0    (   Q
MHEH,B8SA%@,  (X+   9              " @0J[  !X;"]W;W)K<VAE971S
M+W-H965T,S<N>&UL4$L! A0#%     @  #&B6A*2N+[/ @  :P@  !D
M         ("!5[X  'AL+W=O<FMS:&5E=',O<VAE970S."YX;6Q02P$"% ,4
M    "   ,:):4'X$#X("  "$!@  &0              @(%=P0  >&PO=V]R
M:W-H965T<R]S:&5E=#,Y+GAM;%!+ 0(4 Q0    (   QHEI[5/EF6P0  )(-
M   9              " @1;$  !X;"]W;W)K<VAE971S+W-H965T-# N>&UL
M4$L! A0#%     @  #&B6JII!9RZ @  D08  !D              ("!J,@
M 'AL+W=O<FMS:&5E=',O<VAE970T,2YX;6Q02P$"% ,4    "   ,:):W(DS
MUK $  #"#0  &0              @(&9RP  >&PO=V]R:W-H965T<R]S:&5E
M=#0R+GAM;%!+ 0(4 Q0    (   QHEK.H&<_L 0  *L.   9
M  " @8#0  !X;"]W;W)K<VAE971S+W-H965T-#,N>&UL4$L! A0#%     @
M #&B6D0""SH= P  K H  !D              ("!9]4  'AL+W=O<FMS:&5E
M=',O<VAE970T-"YX;6Q02P$"% ,4    "   ,:):\?0^<%@"   ""   &0
M            @(&[V   >&PO=V]R:W-H965T<R]S:&5E=#0U+GAM;%!+ 0(4
M Q0    (   QHEHV=/VU5 0  (85   9              " @4K;  !X;"]W
M;W)K<VAE971S+W-H965T-#8N>&UL4$L! A0#%     @  #&B6L%)1#GL P
M/1$  !D              ("!U=\  'AL+W=O<FMS:&5E=',O<VAE970T-RYX
M;6Q02P$"% ,4    "   ,:):EQZQ1'8#   Z#0  &0              @('X
MXP  >&PO=V]R:W-H965T<R]S:&5E=#0X+GAM;%!+ 0(4 Q0    (   QHEK4
MSUW7DP,  /(2   9              " @:7G  !X;"]W;W)K<VAE971S+W-H
M965T-#DN>&UL4$L! A0#%     @  #&B6A(RIKDX"   348  !D
M     ("!;^L  'AL+W=O<FMS:&5E=',O<VAE970U,"YX;6Q02P$"% ,4
M"   ,:):%CXA[(@"  "2!@  &0              @('>\P  >&PO=V]R:W-H
M965T<R]S:&5E=#4Q+GAM;%!+ 0(4 Q0    (   QHEKA"($*;0(  -T%   9
M              " @9WV  !X;"]W;W)K<VAE971S+W-H965T-3(N>&UL4$L!
M A0#%     @  #&B6BF8M5%9!   *!L  !D              ("!0?D  'AL
M+W=O<FMS:&5E=',O<VAE970U,RYX;6Q02P$"% ,4    "   ,:):@G?ET_L"
M  "Y"0  &0              @('1_0  >&PO=V]R:W-H965T<R]S:&5E=#4T
M+GAM;%!+ 0(4 Q0    (   QHEJ^6)2W2P,  *@*   9              "
M@0,! 0!X;"]W;W)K<VAE971S+W-H965T-34N>&UL4$L! A0#%     @  #&B
M6J?WU5^, @  I04  !D              ("!A00! 'AL+W=O<FMS:&5E=',O
M<VAE970U-BYX;6Q02P$"% ,4    "   ,:):&R+PQ)H&  "_(@  &0
M        @(%(!P$ >&PO=V]R:W-H965T<R]S:&5E=#4W+GAM;%!+ 0(4 Q0
M   (   QHEI!N&')Y@,  -X*   9              " @1D. 0!X;"]W;W)K
M<VAE971S+W-H965T-3@N>&UL4$L! A0#%     @  #&B6EMX)NY( @  !04
M !D              ("!-A(! 'AL+W=O<FMS:&5E=',O<VAE970U.2YX;6Q0
M2P$"% ,4    "   ,:):O?G.4W@#  "1#0  &0              @(&U% $
M>&PO=V]R:W-H965T<R]S:&5E=#8P+GAM;%!+ 0(4 Q0    (   QHEJW@F*?
ME@,  !\/   9              " @608 0!X;"]W;W)K<VAE971S+W-H965T
M-C$N>&UL4$L! A0#%     @  #&B6FM6 SA9 P  S P  !D
M ("!,1P! 'AL+W=O<FMS:&5E=',O<VAE970V,BYX;6Q02P$"% ,4    "
M,:):O>>'5>P$  !4&P  &0              @('!'P$ >&PO=V]R:W-H965T
M<R]S:&5E=#8S+GAM;%!+ 0(4 Q0    (   QHEHRDMV_U@,  .40   9
M          " @>0D 0!X;"]W;W)K<VAE971S+W-H965T-C0N>&UL4$L! A0#
M%     @  #&B6A*!Z@4[ P  APT  !D              ("!\2@! 'AL+W=O
M<FMS:&5E=',O<VAE970V-2YX;6Q02P$"% ,4    "   ,:):Z@+$53P#  "0
M"0  &0              @(%C+ $ >&PO=V]R:W-H965T<R]S:&5E=#8V+GAM
M;%!+ 0(4 Q0    (   QHEI-:5:4> (  .$%   9              " @=8O
M 0!X;"]W;W)K<VAE971S+W-H965T-C<N>&UL4$L! A0#%     @  #&B6OPW
M+4"Z!   4QX  !D              ("!A3(! 'AL+W=O<FMS:&5E=',O<VAE
M970V."YX;6Q02P$"% ,4    "   ,:):K=8(BI("  "*"   &0
M    @(%V-P$ >&PO=V]R:W-H965T<R]S:&5E=#8Y+GAM;%!+ 0(4 Q0    (
M   QHEJ3M]]7L ,  !D*   9              " @3\Z 0!X;"]W;W)K<VAE
M971S+W-H965T-S N>&UL4$L! A0#%     @  #&B6O_*SY_=!   /!,  !D
M             ("!)CX! 'AL+W=O<FMS:&5E=',O<VAE970W,2YX;6Q02P$"
M% ,4    "   ,:):"W:-:$ #   F%   #0              @ $Z0P$ >&PO
M<W1Y;&5S+GAM;%!+ 0(4 Q0    (   QHEJ7BKL<P    !,"   +
M      "  :5& 0!?<F5L<R\N<F5L<U!+ 0(4 Q0    (   QHEIC$N>B?04
M ,TN   /              "  8Y' 0!X;"]W;W)K8F]O:RYX;6Q02P$"% ,4
M    "   ,:):L 4 O38"   <*@  &@              @ $X30$ >&PO7W)E
M;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4    "   ,:):X<M&R/T!   ]
M*0  $P              @ &F3P$ 6T-O;G1E;G1?5'EP97-=+GAM;%!+!08
1    3P!/ * 5  #440$    !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<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>81
<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>83
<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>170</ContextCount>
  <ElementCount>283</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>57</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>5</UnitCount>
  <MyReports>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>100000 - Document - Document And Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>100010 - Statement - CONSOLIDATED BALANCE SHEETS (UNAUDITED)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED</Role>
      <ShortName>CONSOLIDATED BALANCE SHEETS (UNAUDITED)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>100020 - Statement - CONSOLIDATED BALANCE SHEETS (UNAUDITED) (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical</Role>
      <ShortName>CONSOLIDATED BALANCE SHEETS (UNAUDITED) (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>100050 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (UNAUDITED)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (UNAUDITED)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>100060 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>100070 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>995410 - Disclosure - Pay vs Performance Disclosure</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/PvpDisclosure</Role>
      <ShortName>Pay vs Performance Disclosure</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>995445 - Disclosure - Insider Trading Arrangements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements</Role>
      <ShortName>Insider Trading Arrangements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>995455 - Disclosure - Basis of Presentation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentation1</Role>
      <ShortName>Basis of Presentation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>995465 - Disclosure - Restricted Cash</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCash</Role>
      <ShortName>Restricted Cash</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>995475 - Disclosure - Contract Receivables, Net</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNet</Role>
      <ShortName>Contract Receivables, Net</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>995495 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>995515 - Disclosure - Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureDebt3</Role>
      <ShortName>Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>995525 - Disclosure - Revenue Recognition</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognition</Role>
      <ShortName>Revenue Recognition</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>995535 - Disclosure - Derivative Instruments and Hedging Activities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivities1</Role>
      <ShortName>Derivative Instruments and Hedging Activities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>995545 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureIncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>995565 - Disclosure - Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquity</Role>
      <ShortName>Stockholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>995575 - Disclosure - Stock-based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensation</Role>
      <ShortName>Stock-based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>995585 - Disclosure - Acquisition and Divestiture</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestiture</Role>
      <ShortName>Acquisition and Divestiture</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>995595 - Disclosure - Earnings Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShare</Role>
      <ShortName>Earnings Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>995615 - Disclosure - Fair Value</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValue</Role>
      <ShortName>Fair Value</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>995625 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>995635 - Disclosure - Segment Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformation</Role>
      <ShortName>Segment Information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>995665 - Disclosure - Basis of Presentation (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationPolicies</Role>
      <ShortName>Basis of Presentation (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>995675 - Disclosure - Restricted Cash (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashTables</Role>
      <ShortName>Restricted Cash (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCash</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>995685 - Disclosure - Contract Receivables, Net (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetTables</Role>
      <ShortName>Contract Receivables, Net (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNet</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>995705 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeases</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>995725 - Disclosure - Debt (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureDebtTables</Role>
      <ShortName>Debt (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/DisclosureDebt3</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>995735 - Disclosure - Revenue Recognition (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionTables</Role>
      <ShortName>Revenue Recognition (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognition</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>995745 - Disclosure - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesTables</Role>
      <ShortName>Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureIncomeTaxes</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>995755 - Disclosure - Stockholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquityTables</Role>
      <ShortName>Stockholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquity</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>995765 - Disclosure - Stock-based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationTables</Role>
      <ShortName>Stock-based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensation</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>995775 - Disclosure - Acquisition and Divestiture (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureTables</Role>
      <ShortName>Acquisition and Divestiture (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestiture</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>995785 - Disclosure - Earnings Per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareTables</Role>
      <ShortName>Earnings Per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShare</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>995795 - Disclosure - Fair Value (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueTables</Role>
      <ShortName>Fair Value (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValue</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>995805 - Disclosure - Segment Information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationTables</Role>
      <ShortName>Segment Information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformation</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>995815 - Disclosure - Basis of Presentation - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails</Role>
      <ShortName>Basis of Presentation - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>37</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>995825 - Disclosure - Restricted Cash - Reconciliation of Cash and Cash Equivalents, and Restricted Cash to the Total of Cash, Cash Equivalents, and Restricted Cash (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails</Role>
      <ShortName>Restricted Cash - Reconciliation of Cash and Cash Equivalents, and Restricted Cash to the Total of Cash, Cash Equivalents, and Restricted Cash (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>995835 - Disclosure - Contract Receivables, Net - Summary of Contract Receivables, Net (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails</Role>
      <ShortName>Contract Receivables, Net - Summary of Contract Receivables, Net (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>995855 - Disclosure - Contract Receivables, Net -Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom2</Role>
      <ShortName>Contract Receivables, Net -Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>995865 - Disclosure - Contract Receivables, Net - Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (Parenthetical) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom3</Role>
      <ShortName>Contract Receivables, Net - Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (Parenthetical) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>995875 - Disclosure - Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud1</Role>
      <ShortName>Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>995885 - Disclosure - Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (Parenthetical) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2</Role>
      <ShortName>Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (Parenthetical) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>995895 - Disclosure - Contract Receivables, Net - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails</Role>
      <ShortName>Contract Receivables, Net - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>995915 - Disclosure - Leases - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails</Role>
      <ShortName>Leases - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>995925 - Disclosure - Leases - Summary of Future Minimum Lease Payments Under Non-Cancellable Operating and Finance Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails</Role>
      <ShortName>Leases - Summary of Future Minimum Lease Payments Under Non-Cancellable Operating and Finance Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>995945 - Disclosure - Debt - Schedule of Debt (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails</Role>
      <ShortName>Debt - Schedule of Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>995955 - Disclosure - Debt - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails</Role>
      <ShortName>Debt - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>995965 - Disclosure - Debt - Schedule of Future Scheduled Repayments of Debt Principal (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails</Role>
      <ShortName>Debt - Schedule of Future Scheduled Repayments of Debt Principal (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>995975 - Disclosure - Revenue Recognition - Disaggregation of Revenue (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail</Role>
      <ShortName>Revenue Recognition - Disaggregation of Revenue (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>995985 - Disclosure - Revenue Recognition - Schedule of Contract Assets and Liabilities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail</Role>
      <ShortName>Revenue Recognition - Schedule of Contract Assets and Liabilities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>995995 - Disclosure - Revenue Recognition - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail</Role>
      <ShortName>Revenue Recognition - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>996005 - Disclosure - Revenue Recognition - Additional Information (Detail 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1</Role>
      <ShortName>Revenue Recognition - Additional Information (Detail 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>996015 - Disclosure - Derivative Instruments and Hedging Activities - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails</Role>
      <ShortName>Derivative Instruments and Hedging Activities - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>996025 - Disclosure - Income Taxes - Effective Income Tax Rate Reconciliation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails</Role>
      <ShortName>Income Taxes - Effective Income Tax Rate Reconciliation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>996035 - Disclosure - Income Taxes - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesAdditionalInformationDetails</Role>
      <ShortName>Income Taxes - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>996045 - Disclosure - Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails</Role>
      <ShortName>Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>996055 - Disclosure - Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (Parenthetical) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails</Role>
      <ShortName>Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (Parenthetical) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>996065 - Disclosure - Stockholders' Equity - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails</Role>
      <ShortName>Stockholders' Equity - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>996075 - Disclosure - Stockholders' Equity - Summary of Repurchase of Shares (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails</Role>
      <ShortName>Stockholders' Equity - Summary of Repurchase of Shares (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>996085 - Disclosure - Stock-based Compensation - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails</Role>
      <ShortName>Stock-based Compensation - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>996095 - Disclosure - Stock-based Compensation - Schedule Of Awards Granted (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails</Role>
      <ShortName>Stock-based Compensation - Schedule Of Awards Granted (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>996105 - Disclosure - Acquisition and Divestiture - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails</Role>
      <ShortName>Acquisition and Divestiture - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>996115 - Disclosure - Acquisition and Divestiture - Summary of Preliminary Purchase Price Allocation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails</Role>
      <ShortName>Acquisition and Divestiture - Summary of Preliminary Purchase Price Allocation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>996125 - Disclosure - Acquisition and Divestiture - Summary of Estimated Useful Lives of Acquired Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails</Role>
      <ShortName>Acquisition and Divestiture - Summary of Estimated Useful Lives of Acquired Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>996135 - Disclosure - Earnings Per Share - Schedule of Earnings Per Share Including Dilutive Effect of Stock Awards (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails</Role>
      <ShortName>Earnings Per Share - Schedule of Earnings Per Share Including Dilutive Effect of Stock Awards (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>996145 - Disclosure - Earnings Per Share - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails</Role>
      <ShortName>Earnings Per Share - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>996155 - Disclosure - Fair Value - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails</Role>
      <ShortName>Fair Value - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>68</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>996165 - Disclosure - Commitments and Contingencies - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails</Role>
      <ShortName>Commitments and Contingencies - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>996175 - Disclosure - Segment Information - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails</Role>
      <ShortName>Segment Information - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="icfi-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>996185 - Disclosure - Segment Information - Schedule of Segment Revenue, Significant Segment Expenses, and Segment Profit (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails</Role>
      <ShortName>Segment Information - Schedule of Segment Revenue, Significant Segment Expenses, and Segment Profit (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-Q" isDefinitelyFs="true" isUsgaap="true" original="icfi-20250331.htm">icfi-20250331.htm</File>
    <File>icfi-20250331.xsd</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="1">http://fasb.org/srt/2024</BaseTaxonomy>
    <BaseTaxonomy items="595">http://fasb.org/us-gaap/2024</BaseTaxonomy>
    <BaseTaxonomy items="29">http://xbrl.sec.gov/dei/2024</BaseTaxonomy>
    <BaseTaxonomy items="4">http://xbrl.sec.gov/ecd/2024</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>false</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>86
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "icfi-20250331.htm": {
   "nsprefix": "icfi",
   "nsuri": "http://www.icf.com/20250331",
   "dts": {
    "inline": {
     "local": [
      "icfi-20250331.htm"
     ]
    },
    "schema": {
     "local": [
      "icfi-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/lrr/arcrole/esma-arcrole-2018-11-21.xsd",
      "http://www.xbrl.org/lrr/role/negated-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/2023/calculation-1.1.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd",
      "https://www.xbrl.org/dtr/type/2024-01-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/dei/2024/dei-2024.xsd",
      "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd",
      "https://xbrl.sec.gov/ecd/2024/ecd-sub-2024.xsd",
      "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd"
     ]
    }
   },
   "keyStandard": 256,
   "keyCustom": 27,
   "axisStandard": 27,
   "axisCustom": 1,
   "memberStandard": 30,
   "memberCustom": 25,
   "hidden": {
    "total": 15,
    "http://fasb.org/us-gaap/2024": 11,
    "http://xbrl.sec.gov/dei/2024": 4
   },
   "contextCount": 170,
   "entityCount": 1,
   "segmentCount": 57,
   "elementCount": 685,
   "unitCount": 5,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2024": 595,
    "http://xbrl.sec.gov/dei/2024": 29,
    "http://xbrl.sec.gov/ecd/2024": 4,
    "http://fasb.org/srt/2024": 1
   },
   "report": {
    "R1": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation",
     "longName": "100000 - Document - Document And Entity Information",
     "shortName": "Document And Entity Information",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "dei:EntityRegistrantName",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "dei:EntityRegistrantName",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED",
     "longName": "100010 - Statement - CONSOLIDATED BALANCE SHEETS (UNAUDITED)",
     "shortName": "CONSOLIDATED BALANCE SHEETS (UNAUDITED)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:PrepaidExpenseAndOtherAssetsCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R3": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical",
     "longName": "100020 - Statement - CONSOLIDATED BALANCE SHEETS (UNAUDITED) (Parenthetical)",
     "shortName": "CONSOLIDATED BALANCE SHEETS (UNAUDITED) (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "unitRef": "U_UnitedStatesOfAmericaDollarsShare",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "unitRef": "U_UnitedStatesOfAmericaDollarsShare",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED",
     "longName": "100050 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (UNAUDITED)",
     "shortName": "CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (UNAUDITED)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited",
     "longName": "100060 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED)",
     "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "C_65a9caf8-af7b-40d9-b7fe-4e88d11370da",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_0c85ec78-5db4-47b1-a9f7-65ad9cd5f819",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R6": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED",
     "longName": "100070 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED)",
     "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ProfitLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ProfitLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R7": {
     "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure",
     "longName": "995410 - Disclosure - Pay vs Performance Disclosure",
     "shortName": "Pay vs Performance Disclosure",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "7",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R8": {
     "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
     "longName": "995445 - Disclosure - Insider Trading Arrangements",
     "shortName": "Insider Trading Arrangements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentation1",
     "longName": "995455 - Disclosure - Basis of Presentation",
     "shortName": "Basis of Presentation",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCash",
     "longName": "995465 - Disclosure - Restricted Cash",
     "shortName": "Restricted Cash",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNet",
     "longName": "995475 - Disclosure - Contract Receivables, Net",
     "shortName": "Contract Receivables, Net",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeases",
     "longName": "995495 - Disclosure - Leases",
     "shortName": "Leases",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureDebt3",
     "longName": "995515 - Disclosure - Debt",
     "shortName": "Debt",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognition",
     "longName": "995525 - Disclosure - Revenue Recognition",
     "shortName": "Revenue Recognition",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivities1",
     "longName": "995535 - Disclosure - Derivative Instruments and Hedging Activities",
     "shortName": "Derivative Instruments and Hedging Activities",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureIncomeTaxes",
     "longName": "995545 - Disclosure - Income Taxes",
     "shortName": "Income Taxes",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquity",
     "longName": "995565 - Disclosure - Stockholders' Equity",
     "shortName": "Stockholders' Equity",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensation",
     "longName": "995575 - Disclosure - Stock-based Compensation",
     "shortName": "Stock-based Compensation",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "18",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestiture",
     "longName": "995585 - Disclosure - Acquisition and Divestiture",
     "shortName": "Acquisition and Divestiture",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "19",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShare",
     "longName": "995595 - Disclosure - Earnings Per Share",
     "shortName": "Earnings Per Share",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "20",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValue",
     "longName": "995615 - Disclosure - Fair Value",
     "shortName": "Fair Value",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "21",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingencies",
     "longName": "995625 - Disclosure - Commitments and Contingencies",
     "shortName": "Commitments and Contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "22",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformation",
     "longName": "995635 - Disclosure - Segment Information",
     "shortName": "Segment Information",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "23",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationPolicies",
     "longName": "995665 - Disclosure - Basis of Presentation (Policies)",
     "shortName": "Basis of Presentation (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "24",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashTables",
     "longName": "995675 - Disclosure - Restricted Cash (Tables)",
     "shortName": "Restricted Cash (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "25",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfRestrictedCashAndCashEquivalentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfRestrictedCashAndCashEquivalentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetTables",
     "longName": "995685 - Disclosure - Contract Receivables, Net (Tables)",
     "shortName": "Contract Receivables, Net (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "26",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesTables",
     "longName": "995705 - Disclosure - Leases (Tables)",
     "shortName": "Leases (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "27",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "icfi:LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "icfi:LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtTables",
     "longName": "995725 - Disclosure - Debt (Tables)",
     "shortName": "Debt (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "28",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionTables",
     "longName": "995735 - Disclosure - Revenue Recognition (Tables)",
     "shortName": "Revenue Recognition (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "29",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesTables",
     "longName": "995745 - Disclosure - Income Taxes (Tables)",
     "shortName": "Income Taxes (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "30",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquityTables",
     "longName": "995755 - Disclosure - Stockholders' Equity (Tables)",
     "shortName": "Stockholders' Equity (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "31",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationTables",
     "longName": "995765 - Disclosure - Stock-based Compensation (Tables)",
     "shortName": "Stock-based Compensation (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "32",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureTables",
     "longName": "995775 - Disclosure - Acquisition and Divestiture (Tables)",
     "shortName": "Acquisition and Divestiture (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "33",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareTables",
     "longName": "995785 - Disclosure - Earnings Per Share (Tables)",
     "shortName": "Earnings Per Share (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "34",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R35": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueTables",
     "longName": "995795 - Disclosure - Fair Value (Tables)",
     "shortName": "Fair Value (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "35",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R36": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationTables",
     "longName": "995805 - Disclosure - Segment Information (Tables)",
     "shortName": "Segment Information (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "36",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R37": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails",
     "longName": "995815 - Disclosure - Basis of Presentation - Additional Information (Details)",
     "shortName": "Basis of Presentation - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "37",
     "firstAnchor": {
      "contextRef": "C_808d33d4-394e-401c-9ad5-d3f7a37d4fef",
      "name": "us-gaap:NumberOfOperatingSegments",
      "unitRef": "U_Segment",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "us-gaap:NumberOfOperatingSegments",
       "span",
       "p",
       "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_3bf23c7a-75e6-47a5-abfe-04e4efc6ca0c",
      "name": "us-gaap:CapitalizedComputerSoftwareNet",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-2",
      "ancestors": [
       "span",
       "p",
       "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
       "div",
       "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R38": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails",
     "longName": "995825 - Disclosure - Restricted Cash - Reconciliation of Cash and Cash Equivalents, and Restricted Cash to the Total of Cash, Cash Equivalents, and Restricted Cash (Details)",
     "shortName": "Restricted Cash - Reconciliation of Cash and Cash Equivalents, and Restricted Cash to the Total of Cash, Cash Equivalents, and Restricted Cash (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "38",
     "firstAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRestrictedCashAndCashEquivalentsTextBlock",
       "div",
       "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R39": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails",
     "longName": "995835 - Disclosure - Contract Receivables, Net - Summary of Contract Receivables, Net (Details)",
     "shortName": "Contract Receivables, Net - Summary of Contract Receivables, Net (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "39",
     "firstAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:BilledContractReceivables",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "div",
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:BilledContractReceivables",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "div",
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R40": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom2",
     "longName": "995855 - Disclosure - Contract Receivables, Net -Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (Details)",
     "shortName": "Contract Receivables, Net -Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "40",
     "firstAnchor": {
      "contextRef": "C_15f9cc62-57d3-4011-868e-fa21d140029f",
      "name": "icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_15f9cc62-57d3-4011-868e-fa21d140029f",
      "name": "icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R41": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom3",
     "longName": "995865 - Disclosure - Contract Receivables, Net - Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (Parenthetical) (Details)",
     "shortName": "Contract Receivables, Net - Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers (Parenthetical) (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "parenthetical",
     "menuCat": "Details",
     "order": "41",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "icfi:ProceedsFromSaleOfBilledContractReceivables",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "link:footnote",
       "div",
       "div",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "icfi:ProceedsFromSaleOfBilledContractReceivables",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "link:footnote",
       "div",
       "div",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R42": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud1",
     "longName": "995875 - Disclosure - Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (Details)",
     "shortName": "Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "42",
     "firstAnchor": {
      "contextRef": "C_15f9cc62-57d3-4011-868e-fa21d140029f",
      "name": "icfi:SaleOfReceivablesLiabilities",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "icfi:SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:RepaymentsOfAccountsReceivableSecuritization",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "icfi:SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R43": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2",
     "longName": "995885 - Disclosure - Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (Parenthetical) (Details)",
     "shortName": "Contract Receivables, Net - Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG (Parenthetical) (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "parenthetical",
     "menuCat": "Details",
     "order": "43",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "icfi:ProceedsFromSaleOfBilledReceivablesNotYetRemitted",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "link:footnote",
       "div",
       "div",
       "icfi:SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "icfi:ProceedsFromSaleOfBilledReceivablesNotYetRemitted",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "link:footnote",
       "div",
       "div",
       "icfi:SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R44": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails",
     "longName": "995895 - Disclosure - Contract Receivables, Net - Additional Information (Details)",
     "shortName": "Contract Receivables, Net - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "44",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ProceedsFromSaleAndCollectionOfReceivables",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ProceedsFromSaleAndCollectionOfReceivables",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R45": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails",
     "longName": "995915 - Disclosure - Leases - Additional Information (Details)",
     "shortName": "Leases - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "45",
     "firstAnchor": {
      "contextRef": "C_643b12b8-599c-49b4-8711-809093c2c045",
      "name": "us-gaap:LesseeOperatingLeaseRemainingLeaseTerm",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_643b12b8-599c-49b4-8711-809093c2c045",
      "name": "us-gaap:LesseeOperatingLeaseRemainingLeaseTerm",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R46": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails",
     "longName": "995925 - Disclosure - Leases - Summary of Future Minimum Lease Payments Under Non-Cancellable Operating and Finance Leases (Details)",
     "shortName": "Leases - Summary of Future Minimum Lease Payments Under Non-Cancellable Operating and Finance Leases (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "46",
     "firstAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R47": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails",
     "longName": "995945 - Disclosure - Debt - Schedule of Debt (Details)",
     "shortName": "Debt - Schedule of Debt (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "47",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DebtInstrumentInterestRateDuringPeriod",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DebtInstrumentInterestRateDuringPeriod",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R48": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
     "longName": "995955 - Disclosure - Debt - Additional Information (Details)",
     "shortName": "Debt - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "48",
     "firstAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:LettersOfCreditOutstandingAmount",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_5fd83144-3897-4f84-96ea-5e88b71cc15c",
      "name": "us-gaap:DerivativeFixedInterestRate",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R49": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails",
     "longName": "995965 - Disclosure - Debt - Schedule of Future Scheduled Repayments of Debt Principal (Details)",
     "shortName": "Debt - Schedule of Future Scheduled Repayments of Debt Principal (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "49",
     "firstAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R50": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail",
     "longName": "995975 - Disclosure - Revenue Recognition - Disaggregation of Revenue (Detail)",
     "shortName": "Revenue Recognition - Disaggregation of Revenue (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "50",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_832766b3-22da-46ec-90fa-22ffcee71b17",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R51": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail",
     "longName": "995985 - Disclosure - Revenue Recognition - Schedule of Contract Assets and Liabilities (Detail)",
     "shortName": "Revenue Recognition - Schedule of Contract Assets and Liabilities (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "51",
     "firstAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:ContractWithCustomerAssetNetCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "icfi:ContractWithCustomerAssetsLiabilitiesNetCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R52": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail",
     "longName": "995995 - Disclosure - Revenue Recognition - Additional Information (Detail)",
     "shortName": "Revenue Recognition - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "52",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R53": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1",
     "longName": "996005 - Disclosure - Revenue Recognition - Additional Information (Detail 1)",
     "shortName": "Revenue Recognition - Additional Information (Detail 1)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "53",
     "firstAnchor": {
      "contextRef": "C_b1f58b6a-aabd-48ae-a826-4b7bf82c9268",
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-8",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_b1f58b6a-aabd-48ae-a826-4b7bf82c9268",
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-8",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R54": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails",
     "longName": "996015 - Disclosure - Derivative Instruments and Hedging Activities - Additional Information (Details)",
     "shortName": "Derivative Instruments and Hedging Activities - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "54",
     "firstAnchor": {
      "contextRef": "C_5fd83144-3897-4f84-96ea-5e88b71cc15c",
      "name": "us-gaap:DerivativeNotionalAmount",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_5fd83144-3897-4f84-96ea-5e88b71cc15c",
      "name": "us-gaap:DerivativeNotionalAmount",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R55": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails",
     "longName": "996025 - Disclosure - Income Taxes - Effective Income Tax Rate Reconciliation (Details)",
     "shortName": "Income Taxes - Effective Income Tax Rate Reconciliation (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "55",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R56": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesAdditionalInformationDetails",
     "longName": "996035 - Disclosure - Income Taxes - Additional Information (Details)",
     "shortName": "Income Taxes - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "56",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DeferredIncomeTaxExpenseBenefit",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:DeferredIncomeTaxExpenseBenefit",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R57": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails",
     "longName": "996045 - Disclosure - Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (Details)",
     "shortName": "Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "57",
     "firstAnchor": {
      "contextRef": "C_15f9cc62-57d3-4011-868e-fa21d140029f",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_11354c7f-7371-4601-8c66-053545e8fdee",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R58": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails",
     "longName": "996055 - Disclosure - Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (Parenthetical) (Details)",
     "shortName": "Stockholders' Equity - Components of Accumulated Other Comprehensive Loss (Parenthetical) (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "parenthetical",
     "menuCat": "Details",
     "order": "58",
     "firstAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "link:footnote",
       "p",
       "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "link:footnote",
       "p",
       "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R59": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails",
     "longName": "996065 - Disclosure - Stockholders' Equity - Additional Information (Details)",
     "shortName": "Stockholders' Equity - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "59",
     "firstAnchor": {
      "contextRef": "C_eaf8d061-8b32-4c51-a3e3-903022a6b165",
      "name": "srt:StockRepurchaseProgramAuthorizedAmount1",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_eaf8d061-8b32-4c51-a3e3-903022a6b165",
      "name": "srt:StockRepurchaseProgramAuthorizedAmount1",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R60": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails",
     "longName": "996075 - Disclosure - Stockholders' Equity - Summary of Repurchase of Shares (Details)",
     "shortName": "Stockholders' Equity - Summary of Repurchase of Shares (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "60",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:StockRepurchasedDuringPeriodValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:StockRepurchasedDuringPeriodValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R61": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails",
     "longName": "996085 - Disclosure - Stock-based Compensation - Additional Information (Details)",
     "shortName": "Stock-based Compensation - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "61",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R62": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails",
     "longName": "996095 - Disclosure - Stock-based Compensation - Schedule Of Awards Granted (Details)",
     "shortName": "Stock-based Compensation - Schedule Of Awards Granted (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "62",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock",
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock",
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R63": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails",
     "longName": "996105 - Disclosure - Acquisition and Divestiture - Additional Information (Details)",
     "shortName": "Acquisition and Divestiture - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "63",
     "firstAnchor": {
      "contextRef": "C_9e6f0002-5125-45cf-a28f-bf5906a2373d",
      "name": "us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_9e6f0002-5125-45cf-a28f-bf5906a2373d",
      "name": "us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R64": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails",
     "longName": "996115 - Disclosure - Acquisition and Divestiture - Summary of Preliminary Purchase Price Allocation (Details)",
     "shortName": "Acquisition and Divestiture - Summary of Preliminary Purchase Price Allocation (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "64",
     "firstAnchor": {
      "contextRef": "C_f8ae11e8-edbd-4319-8986-377724fc88d0",
      "name": "icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
       "div",
       "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f8ae11e8-edbd-4319-8986-377724fc88d0",
      "name": "icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
       "div",
       "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R65": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails",
     "longName": "996125 - Disclosure - Acquisition and Divestiture - Summary of Estimated Useful Lives of Acquired Intangible Assets (Details)",
     "shortName": "Acquisition and Divestiture - Summary of Estimated Useful Lives of Acquired Intangible Assets (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "65",
     "firstAnchor": {
      "contextRef": "C_c54427f6-4d40-4ed9-a059-5e5e46151c50",
      "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
       "div",
       "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_c284df75-1ba0-4f3b-a4f2-955dd514609a",
      "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
       "div",
       "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R66": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails",
     "longName": "996135 - Disclosure - Earnings Per Share - Schedule of Earnings Per Share Including Dilutive Effect of Stock Awards (Details)",
     "shortName": "Earnings Per Share - Schedule of Earnings Per Share Including Dilutive Effect of Stock Awards (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "66",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "div",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R67": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails",
     "longName": "996145 - Disclosure - Earnings Per Share - Additional Information (Details)",
     "shortName": "Earnings Per Share - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "67",
     "firstAnchor": {
      "contextRef": "C_359bce9d-0b82-4401-934b-1a14d1fb9b89",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_359bce9d-0b82-4401-934b-1a14d1fb9b89",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R68": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails",
     "longName": "996155 - Disclosure - Fair Value - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (Details)",
     "shortName": "Fair Value - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "68",
     "firstAnchor": {
      "contextRef": "C_f84c9782-f8ab-4f6a-b349-2b609fdec6dc",
      "name": "us-gaap:AssetsFairValueDisclosure",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f84c9782-f8ab-4f6a-b349-2b609fdec6dc",
      "name": "us-gaap:AssetsFairValueDisclosure",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R69": {
     "role": "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails",
     "longName": "996165 - Disclosure - Commitments and Contingencies - Additional Information (Details)",
     "shortName": "Commitments and Contingencies - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "69",
     "firstAnchor": {
      "contextRef": "C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089",
      "name": "us-gaap:LettersOfCreditOutstandingAmount",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_65b8a2bd-11e0-47d3-a8bf-6ada5559cac9",
      "name": "us-gaap:LettersOfCreditOutstandingAmount",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R70": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails",
     "longName": "996175 - Disclosure - Segment Information - Additional Information (Details)",
     "shortName": "Segment Information - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "70",
     "firstAnchor": {
      "contextRef": "C_808d33d4-394e-401c-9ad5-d3f7a37d4fef",
      "name": "us-gaap:NumberOfOperatingSegments",
      "unitRef": "U_Segment",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "us-gaap:NumberOfOperatingSegments",
       "span",
       "p",
       "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:SegmentReportingCodmProfitLossMeasureHowUsedDescription",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    },
    "R71": {
     "role": "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails",
     "longName": "996185 - Disclosure - Segment Information - Schedule of Segment Revenue, Significant Segment Expenses, and Segment Profit (Details)",
     "shortName": "Segment Information - Schedule of Segment Revenue, Significant Segment Expenses, and Segment Profit (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "71",
     "firstAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_067e4f33-8793-41c4-a5a4-3dc465f227c9",
      "name": "icfi:DirectLaborAndRelatedFringeCosts",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "icfi-20250331.htm",
      "unique": true
     }
    }
   },
   "tag": {
    "us-gaap_AccountingPoliciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountingPoliciesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsNotesAndLoansReceivableLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsNotesAndLoansReceivableLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts, Notes, Loans and Financing Receivable [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": [
      "r284",
      "r993"
     ]
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilities"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]",
        "terseLabel": "Accrued Expenses and Other Current Liabilities",
        "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period."
       }
      }
     },
     "auth_ref": [
      "r86",
      "r89",
      "r94",
      "r1066"
     ]
    },
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Payable, Current",
        "terseLabel": "Accounts payable",
        "totalLabel": "Accounts Payable, Current, Total",
        "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": [
      "r86",
      "r838"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Receivable, after Allowance for Credit Loss, Current",
        "terseLabel": "Contract receivables, net",
        "totalLabel": "Contract 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, classified as current."
       }
      }
     },
     "auth_ref": [
      "r992"
     ]
    },
    "us-gaap_AccountsReceivableSale": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableSale",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Billed receivables sold during the period",
        "label": "Accounts Receivable, Sale",
        "documentation": "Amount of decrease from sale of accounts receivable."
       }
      }
     },
     "auth_ref": [
      "r321"
     ]
    },
    "icfi_AccruedExpensesAndOtherCurrentLiabilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AccruedExpensesAndOtherCurrentLiabilitiesMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued expenses and other current liabilities.",
        "label": "Accrued Expenses And Other Current Liabilities [Member]",
        "terseLabel": "Accrued Expenses and Other Current Liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_AccruedFacilitiesRentalAndLeaseExitCostsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AccruedFacilitiesRentalAndLeaseExitCostsCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued facilities rental and lease exit costs current.",
        "label": "Accrued Facilities Rental And Lease Exit Costs Current",
        "terseLabel": "Facilities rental and lease exit costs"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AccruedInformationTechnologyAndSoftwareLicensingCostsCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents accrued information technology and software licensing costs current.",
        "label": "Accrued Information Technology And Software Licensing Costs Current",
        "terseLabel": "IT and software licensing costs"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedLiabilitiesAndOtherLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedLiabilitiesAndOtherLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Liabilities and Other Liabilities",
        "terseLabel": "Accrued expenses and other current liabilities",
        "verboseLabel": "Accrued and other future expenses",
        "documentation": "Amount of expenses incurred but not yet paid nor invoiced, and liabilities classified as other."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Liabilities, Current",
        "totalLabel": "Total accrued expenses and other current liabilities",
        "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": [
      "r89"
     ]
    },
    "icfi_AccruedOtherFutureLeaseRelatedExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AccruedOtherFutureLeaseRelatedExpenses",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued other future lease-related expenses.",
        "label": "Accrued Other Future Lease-Related Expenses",
        "terseLabel": "Accrued other future lease-related expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedProfessionalFeesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedProfessionalFeesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Professional Fees, Current",
        "terseLabel": "Professional services",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r89"
     ]
    },
    "icfi_AccruedSubcontractorAndOtherDirectCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AccruedSubcontractorAndOtherDirectCosts",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents accrued subcontractor and other direct costs.",
        "label": "Accrued Subcontractor And Other Direct Costs",
        "terseLabel": "Accrued subcontractors and other direct costs"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_AccruedTaxesAndInsurancePremiumsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AccruedTaxesAndInsurancePremiumsCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued taxes and insurance premiums current.",
        "label": "Accrued Taxes And Insurance Premiums Current",
        "terseLabel": "Taxes and insurance premiums"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedGainLossNetCashFlowHedgeParentMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member]",
        "terseLabel": "Gain on Sale of Interest Rate Hedge Agreement",
        "documentation": "Accumulated other comprehensive income (loss) from gain (loss) of derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent."
       }
      }
     },
     "auth_ref": [
      "r193",
      "r200",
      "r201",
      "r539",
      "r782",
      "r965"
     ]
    },
    "icfi_AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Change in Fair Value of Interest Rate Hedge Agreements and Other Adjustments",
        "documentation": "Accumulated other comprehensive income loss cumulative changes in fair value on derivative designated from cash flow Hedges effect net of tax.",
        "label": "Accumulated Other Comprehensive Income Loss Cumulative Changes In Fair Value On Derivative Designated From Cash Flow Hedges Effect Net Of Tax [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeLossLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss) [Line Items]",
        "terseLabel": "Accumulated Other Comprehensive Income Loss [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": [
      "r199",
      "r200",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "terseLabel": "Accumulated other comprehensive loss",
        "totalLabel": "Accumulated Other Comprehensive Income (Loss), Net of Tax, Total",
        "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r24",
      "r109",
      "r190",
      "r651",
      "r690",
      "r691"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeLossTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss) [Table]",
        "terseLabel": "Accumulated Other Comprehensive Income Loss [Table]",
        "documentation": "Disclosure of information about components of accumulated other comprehensive income (loss)."
       }
      }
     },
     "auth_ref": [
      "r199",
      "r200",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails",
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "AOCI Attributable to Parent [Member]",
        "terseLabel": "Accumulated Other Comprehensive Loss",
        "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": [
      "r7",
      "r15",
      "r24",
      "r546",
      "r549",
      "r598",
      "r686",
      "r687",
      "r965",
      "r966",
      "r967",
      "r979",
      "r980",
      "r981",
      "r983"
     ]
    },
    "us-gaap_AccumulatedTranslationAdjustmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedTranslationAdjustmentMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Foreign Currency Adjustment Attributable to Parent [Member]",
        "terseLabel": "Foreign Currency Translation Adjustments",
        "documentation": "Accumulated other comprehensive income (loss) resulting from 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, attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r15",
      "r24",
      "r107",
      "r108",
      "r200",
      "r201",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r965"
     ]
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AcquiredFiniteLivedIntangibleAssetsLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Acquired Finite-Lived Intangible Assets [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": [
      "r344",
      "r345",
      "r346",
      "r348",
      "r777"
     ]
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life",
        "terseLabel": "Estimated useful lives of acquired intangible assets",
        "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": [
      "r346",
      "r777"
     ]
    },
    "icfi_AcquisitionAndDivestitureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AcquisitionAndDivestitureLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Acquisition and divestiture.",
        "label": "Acquisition And Divestiture [Line Items]",
        "verboseLabel": "Acquisition and Divestiture [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_Additional402vDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "Additional402vDisclosureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional 402(v) Disclosure [Text Block]",
        "terseLabel": "Additional 402(v) Disclosure"
       }
      }
     },
     "auth_ref": [
      "r895"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapitalCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Paid in Capital, Common Stock",
        "terseLabel": "Additional paid-in capital",
        "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital."
       }
      }
     },
     "auth_ref": [
      "r100"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Paid-in Capital [Member]",
        "terseLabel": "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": [
      "r701",
      "r979",
      "r980",
      "r981",
      "r983",
      "r1078",
      "r1151"
     ]
    },
    "ecd_AdjToCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Compensation Amount",
        "terseLabel": "Adjustment to Compensation, Amount"
       }
      }
     },
     "auth_ref": [
      "r908"
     ]
    },
    "ecd_AdjToCompAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToCompAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Compensation [Axis]",
        "terseLabel": "Adjustment to Compensation:"
       }
      }
     },
     "auth_ref": [
      "r908"
     ]
    },
    "ecd_AdjToNonPeoNeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToNonPeoNeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]",
        "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote"
       }
      }
     },
     "auth_ref": [
      "r908"
     ]
    },
    "ecd_AdjToPeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToPeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment To PEO Compensation, Footnote [Text Block]",
        "terseLabel": "Adjustment To PEO Compensation, Footnote"
       }
      }
     },
     "auth_ref": [
      "r908"
     ]
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition",
        "terseLabel": "Equity compensation",
        "totalLabel": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition, Total",
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r56",
      "r57",
      "r464"
     ]
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities:"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AggtChngPnsnValInSummryCompstnTblForAplblYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtChngPnsnValInSummryCompstnTblForAplblYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member]",
        "terseLabel": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r941"
     ]
    },
    "ecd_AggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Erroneous Compensation Amount",
        "terseLabel": "Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r867",
      "r877",
      "r887",
      "r919"
     ]
    },
    "ecd_AggtErrCompNotYetDeterminedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtErrCompNotYetDeterminedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]",
        "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined"
       }
      }
     },
     "auth_ref": [
      "r870",
      "r880",
      "r890",
      "r922"
     ]
    },
    "ecd_AggtPnsnAdjsSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtPnsnAdjsSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Pension Adjustments Service Cost [Member]",
        "terseLabel": "Aggregate Pension Adjustments Service Cost"
       }
      }
     },
     "auth_ref": [
      "r942"
     ]
    },
    "ecd_AllAdjToCompMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllAdjToCompMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Adjustments to Compensation [Member]",
        "terseLabel": "All Adjustments to Compensation"
       }
      }
     },
     "auth_ref": [
      "r908"
     ]
    },
    "ecd_AllExecutiveCategoriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllExecutiveCategoriesMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Executive Categories [Member]",
        "terseLabel": "All Executive Categories"
       }
      }
     },
     "auth_ref": [
      "r915"
     ]
    },
    "ecd_AllIndividualsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllIndividualsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Individuals [Member]",
        "terseLabel": "All Individuals"
       }
      }
     },
     "auth_ref": [
      "r871",
      "r881",
      "r891",
      "r915",
      "r923",
      "r927",
      "r935"
     ]
    },
    "ecd_AllTradingArrangementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllTradingArrangementsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Trading Arrangements [Member]",
        "terseLabel": "All Trading Arrangements"
       }
      }
     },
     "auth_ref": [
      "r933"
     ]
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllocatedShareBasedCompensationExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Stock-based compensation expense",
        "label": "Share-Based Payment Arrangement, Expense",
        "terseLabel": "Share-Based Compensation Expense",
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized."
       }
      }
     },
     "auth_ref": [
      "r494",
      "r499"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails": {
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "negatedLabel": "Allowance for expected credit losses",
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r191",
      "r285",
      "r319"
     ]
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Flag",
        "terseLabel": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "icfi_AmortizationOfIntangibleAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AmortizationOfIntangibleAsset",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amortization of intangible asset.",
        "label": "Amortization Of Intangible Asset",
        "terseLabel": "Amortization of intangible assets"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization of Intangible Assets Acquired in Business Combinations [Member]",
        "documentation": "Amortization of intangible assets acquired in business combinations.",
        "terseLabel": "Amortization of Intangible Assets Acquired in Business Combinations"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization Period Of Pre Transition Foreign Currency Losses Against Taxable Income",
        "documentation": "Amortization period of pre transition foreign currency losses against taxable income.",
        "terseLabel": "Amortization period of pre-transition foreign currency losses against taxable income"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "terseLabel": "Antidilutive securities excluded from computation of earnings per share, amount",
        "verboseLabel": "Restricted Stock Units",
        "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": [
      "r242"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities [Axis]",
        "documentation": "Information by type of antidilutive security."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesNameDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities, Name [Domain]",
        "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "icfi_AppliedEnergyGroupIncMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AppliedEnergyGroupIncMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Applied Energy Group, Inc.",
        "label": "Applied Energy Group Inc [Member]",
        "documentation": "Applied Energy Group, Inc."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets",
        "totalLabel": "Total Assets",
        "documentation": "Amount of asset recognized for present right to economic benefit."
       }
      }
     },
     "auth_ref": [
      "r141",
      "r152",
      "r187",
      "r213",
      "r246",
      "r253",
      "r272",
      "r276",
      "r316",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r535",
      "r541",
      "r576",
      "r646",
      "r726",
      "r791",
      "r792",
      "r838",
      "r858",
      "r1034",
      "r1035",
      "r1106"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets [Abstract]",
        "terseLabel": "ASSETS"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current",
        "totalLabel": "Total Current Assets",
        "documentation": "Amount of asset recognized for present right to economic benefit, classified as current."
       }
      }
     },
     "auth_ref": [
      "r182",
      "r192",
      "r213",
      "r316",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r535",
      "r541",
      "r576",
      "r838",
      "r1034",
      "r1035",
      "r1106"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "Current Assets:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsFairValueDisclosure": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsFairValueDisclosure",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Fair Value Disclosure",
        "totalLabel": "Assets, Fair Value Disclosure, Total",
        "terseLabel": "Assets, Total",
        "documentation": "Fair value portion of asset recognized for present right to economic benefit."
       }
      }
     },
     "auth_ref": [
      "r557",
      "r558",
      "r826"
     ]
    },
    "us-gaap_AssetsFairValueDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsFairValueDisclosureAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Fair Value Disclosure [Abstract]",
        "terseLabel": "Assets:"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_AugustThirtyFirstTwoThousandTwentyThreeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "AugustThirtyFirstTwoThousandTwentyThreeMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "August 31, 2023.",
        "label": "August Thirty First Two Thousand Twenty Three [Member]",
        "terseLabel": "August 31, 2023"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AwardExrcPrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardExrcPrice",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Exercise Price",
        "terseLabel": "Exercise Price"
       }
      }
     },
     "auth_ref": [
      "r930"
     ]
    },
    "ecd_AwardGrantDateFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardGrantDateFairValue",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Grant Date Fair Value",
        "terseLabel": "Fair Value as of Grant Date"
       }
      }
     },
     "auth_ref": [
      "r931"
     ]
    },
    "ecd_AwardTmgDiscLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgDiscLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Disclosures [Line Items]",
        "terseLabel": "Award Timing Disclosures"
       }
      }
     },
     "auth_ref": [
      "r926"
     ]
    },
    "ecd_AwardTmgHowMnpiCnsdrdTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgHowMnpiCnsdrdTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing, How MNPI Considered [Text Block]",
        "terseLabel": "Award Timing, How MNPI Considered"
       }
      }
     },
     "auth_ref": [
      "r926"
     ]
    },
    "ecd_AwardTmgMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Method [Text Block]",
        "terseLabel": "Award Timing Method"
       }
      }
     },
     "auth_ref": [
      "r926"
     ]
    },
    "ecd_AwardTmgMnpiCnsdrdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgMnpiCnsdrdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing MNPI Considered [Flag]",
        "terseLabel": "Award Timing MNPI Considered"
       }
      }
     },
     "auth_ref": [
      "r926"
     ]
    },
    "ecd_AwardTmgMnpiDiscTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgMnpiDiscTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing MNPI Disclosure [Text Block]",
        "terseLabel": "Award Timing MNPI Disclosure"
       }
      }
     },
     "auth_ref": [
      "r926"
     ]
    },
    "ecd_AwardTmgPredtrmndFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgPredtrmndFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Predetermined [Flag]",
        "terseLabel": "Award Timing Predetermined"
       }
      }
     },
     "auth_ref": [
      "r926"
     ]
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Axis]",
        "terseLabel": "Award Type",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493"
     ]
    },
    "ecd_AwardUndrlygSecuritiesAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardUndrlygSecuritiesAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Underlying Securities Amount",
        "terseLabel": "Underlying Securities"
       }
      }
     },
     "auth_ref": [
      "r929"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardsCloseToMnpiDiscIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r928"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardsCloseToMnpiDiscTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures [Table]",
        "terseLabel": "Awards Close in Time to MNPI Disclosures"
       }
      }
     },
     "auth_ref": [
      "r927"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardsCloseToMnpiDiscTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]",
        "terseLabel": "Awards Close in Time to MNPI Disclosures, Table"
       }
      }
     },
     "auth_ref": [
      "r927"
     ]
    },
    "us-gaap_BalanceSheetLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BalanceSheetLocationAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position Location, Balance [Axis]",
        "terseLabel": "Balance Sheet Location",
        "documentation": "Information by location in statement of financial position where disaggregated cumulative balance has been reported."
       }
      }
     },
     "auth_ref": [
      "r361",
      "r1117",
      "r1118"
     ]
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BalanceSheetLocationDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position Location, Balance [Domain]",
        "terseLabel": "Balance Sheet Location",
        "documentation": "Location in statement of financial position where disaggregated cumulative balance has been reported."
       }
      }
     },
     "auth_ref": [
      "r70",
      "r73",
      "r361",
      "r1117",
      "r1118"
     ]
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Accounting, Policy [Policy Text Block]",
        "terseLabel": "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": []
    },
    "icfi_BasisOfPresentationAndNatureOfOperationsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "BasisOfPresentationAndNatureOfOperationsLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Basis of presentation and nature of operations.",
        "label": "Basis Of Presentation And Nature Of Operations [Line Items]",
        "terseLabel": "Basis of Presentation and Nature of Operations [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_BasisOfPresentationAndNatureOfOperationsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "BasisOfPresentationAndNatureOfOperationsTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Basis of presentation and nature of operations.",
        "label": "Basis Of Presentation And Nature Of Operations [Table]",
        "terseLabel": "Basis Of Presentation And Nature Of Operations [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BilledContractReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BilledContractReceivables",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails": {
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetSummaryOfContractReceivablesNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Billed Contracts Receivable",
        "terseLabel": "Billed and billable",
        "documentation": "Amounts due for billed services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the Company and, at a minimum, one other party. An example would be amounts billed to customers under contracts or programs but not paid as of the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r634"
     ]
    },
    "icfi_BilledContractReceivablesSoldButNotYetCollectedFromCustomers": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "BilledContractReceivablesSoldButNotYetCollectedFromCustomers",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Billed contract receivables sold but not yet collected from customers.",
        "label": "Billed Contract Receivables Sold But Not Yet Collected From Customers",
        "periodStartLabel": "Beginning balance",
        "periodEndLabel": "Ending balance"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_BlantonAndAssociatesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "BlantonAndAssociatesMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Blanton and Associates [Member]",
        "label": "Blanton and Associates [Member]",
        "terseLabel": "Blanton and Associates",
        "verboseLabel": "Blanton &amp; Associates"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessAcquisitionAcquireeDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition, Acquiree [Domain]",
        "terseLabel": "Business Acquisition, Acquiree",
        "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": [
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r530",
      "r819",
      "r820"
     ]
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessAcquisitionAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition [Axis]",
        "terseLabel": "Business Acquisition",
        "documentation": "Information by business combination or series of individually immaterial business combinations."
       }
      }
     },
     "auth_ref": [
      "r58",
      "r60",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r530",
      "r819",
      "r820"
     ]
    },
    "us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessAcquisitionDescriptionOfAcquiredEntity",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition, Description of Acquired Entity",
        "terseLabel": "Business acquisition, description",
        "documentation": "With respect to a business combination completed during the period, this element provides a description of the business, other than the name, which may include the industry, size, products and other important information."
       }
      }
     },
     "auth_ref": [
      "r59"
     ]
    },
    "us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessAcquisitionEffectiveDateOfAcquisition1",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition, Effective Date of Acquisition",
        "terseLabel": "Business acquisition date",
        "documentation": "Date when the acquirer obtains control of the acquiree, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r3",
      "r18"
     ]
    },
    "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessAcquisitionProFormaInformationTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition, Pro Forma Information [Table Text Block]",
        "terseLabel": "Schedule of Unaudited Condensed Pro Forma Financial Information",
        "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate."
       }
      }
     },
     "auth_ref": [
      "r951",
      "r952"
     ]
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationConsiderationTransferred1",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Consideration Transferred",
        "terseLabel": "Purchase price acquisition",
        "totalLabel": "Purchase consideration",
        "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r5",
      "r14"
     ]
    },
    "icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed, Accrued Expenses and Other Liabilities",
        "terseLabel": "Accrued expenses",
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed, accrued expenses and other liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents",
        "terseLabel": "Restricted cash",
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r62"
     ]
    },
    "icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract assets",
        "label": "Business combination recognized identifiable assets acquired and liabilities assumed contract assets",
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed contract assets."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other",
        "terseLabel": "Other assets",
        "documentation": "Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r62"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables",
        "terseLabel": "Accounts receivable",
        "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r62"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable",
        "terseLabel": "Accounts payable",
        "documentation": "Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r62"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Other",
        "terseLabel": "Other liabilities",
        "documentation": "Amount of other liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r62"
     ]
    },
    "icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed, Goodwill",
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed, goodwill.",
        "terseLabel": "Goodwill"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles",
        "terseLabel": "Purchase price allocated to intangibles",
        "verboseLabel": "Customer-related intangibles",
        "documentation": "The amount of identifiable intangible assets recognized as of the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r61",
      "r62"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property and equipment",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment",
        "totalLabel": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment, Total",
        "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r61",
      "r62"
     ]
    },
    "icfi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business combination, recognized identifiable assets acquired and liabilities assumed, working capital.",
        "label": "Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Working Capital",
        "terseLabel": "Working capital acquired",
        "verboseLabel": "Net working capital"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combinations [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_CMGAcquisitionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "CMGAcquisitionMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "C M G acquisition.",
        "label": "C M G acquisition [Member]",
        "terseLabel": "C M G acquisition"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_CMYAcquisitionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "CMYAcquisitionMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "CMY acquisition.",
        "label": "C M Y acquisition [Member]",
        "terseLabel": "CMY Acquisition"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_CMYSolutionsLLCMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "CMYSolutionsLLCMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "C M Y Solutions, L L C.",
        "label": "C M Y Solutions, L L C. [Member]",
        "terseLabel": "CMY Solutions, LLC."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CapitalizedComputerSoftwareNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CapitalizedComputerSoftwareNet",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Capitalized Computer Software, Net",
        "periodEndLabel": "Capitalized Computer Software, Net, Ending Balance",
        "periodStartLabel": "Capitalized Computer Software, Net, Beginning Balance",
        "totalLabel": "Capitalized Computer Software, Net, Total",
        "terseLabel": "Capitalized software intangible assets",
        "documentation": "The carrying amount of capitalized computer software costs net of accumulated amortization as of the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r776"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "terseLabel": "Cash and cash equivalents",
        "totalLabel": "Cash and Cash Equivalents, at Carrying Value, Total",
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r30",
      "r184",
      "r780"
     ]
    },
    "us-gaap_CashAndCashEquivalentsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCash"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents Disclosure [Text Block]",
        "terseLabel": "Restricted Cash",
        "documentation": "The entire disclosure for cash and cash equivalent footnotes, which may include the types of deposits and money market instruments, applicable carrying amounts, restricted amounts and compensating balance arrangements. Cash and equivalents include: (1) currency on hand (2) demand deposits with banks or financial institutions (3) other kinds of accounts that have the general characteristics of demand deposits (4) 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. Generally, only investments maturing within three months from the date of acquisition qualify."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r648"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents",
        "totalLabel": "Total of cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows",
        "periodStartLabel": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Beginning Balance",
        "periodEndLabel": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Ending Balance",
        "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": [
      "r30",
      "r118",
      "r210"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations",
        "periodEndLabel": "Cash, Cash Equivalents, and Restricted Cash, End of Period",
        "periodStartLabel": "Cash, Cash Equivalents, and Restricted Cash, Beginning of Period",
        "totalLabel": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations, Total",
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, 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": [
      "r30",
      "r118",
      "r210"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net Change in Cash, Cash Equivalents, and Restricted Cash",
        "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": [
      "r6",
      "r118"
     ]
    },
    "icfi_CashCollectedNotYetRemittedToPurchaserOfBilledReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "CashCollectedNotYetRemittedToPurchaserOfBilledReceivables",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Cash collected not yet remitted for receivables sold",
        "documentation": "Cash collected not yet remitted to purchaser of billed receivables.",
        "label": "Cash collected not yet remitted to purchaser of billed receivables",
        "terseLabel": "Cash collected not yet remitted to purchaser of billed receivables"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashFlowHedgingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashFlowHedgingMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Flow Hedging [Member]",
        "terseLabel": "Cash Flow Hedging",
        "documentation": "Hedge of the exposure to variability in the cash flows of a recognized asset or liability, or of a forecasted transaction, that is attributable to a particular risk."
       }
      }
     },
     "auth_ref": [
      "r68"
     ]
    },
    "icfi_CashSettledRSUsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "CashSettledRSUsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents cash settled RSUs.",
        "label": "Cash Settled R S Us [Member]",
        "terseLabel": "Cash Settled RSUs",
        "verboseLabel": "Cash-Settled RSUs"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_ChangedPeerGroupFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ChangedPeerGroupFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changed Peer Group, Footnote [Text Block]",
        "terseLabel": "Changed Peer Group, Footnote"
       }
      }
     },
     "auth_ref": [
      "r906"
     ]
    },
    "ecd_ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member]",
        "terseLabel": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year"
       }
      }
     },
     "auth_ref": [
      "r903"
     ]
    },
    "ecd_ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member]",
        "terseLabel": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested"
       }
      }
     },
     "auth_ref": [
      "r901"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CityAreaCode",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "terseLabel": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ClassOfTreasuryStockTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ClassOfTreasuryStockTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Class of Treasury Stock [Table]",
        "terseLabel": "Class Of Treasury Stock [Table]",
        "documentation": "Disclosure of information about treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock."
       }
      }
     },
     "auth_ref": [
      "r50",
      "r51",
      "r52",
      "r53"
     ]
    },
    "ecd_CoSelectedMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CoSelectedMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Company Selected Measure Amount",
        "terseLabel": "Company Selected Measure Amount"
       }
      }
     },
     "auth_ref": [
      "r907"
     ]
    },
    "ecd_CoSelectedMeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CoSelectedMeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Company Selected Measure Name",
        "terseLabel": "Company Selected Measure Name"
       }
      }
     },
     "auth_ref": [
      "r907"
     ]
    },
    "icfi_CommercialMarketingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "CommercialMarketingMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commercial marketing.",
        "label": "Commercial Marketing Member",
        "verboseLabel": "Commercial Marketing"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_CommercialMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "CommercialMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commercial.",
        "label": "Commercial [Member]",
        "terseLabel": "Commercial"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingencies",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies",
        "terseLabel": "Commitments and Contingencies (Note 14)",
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur."
       }
      }
     },
     "auth_ref": [
      "r95",
      "r144",
      "r647",
      "r713"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingencies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "terseLabel": "Commitments and Contingencies",
        "documentation": "The entire disclosure for commitments and contingencies."
       }
      }
     },
     "auth_ref": [
      "r124",
      "r373",
      "r374",
      "r773",
      "r1021",
      "r1026"
     ]
    },
    "us-gaap_CommonStockDividendsPerShareDeclared": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockDividendsPerShareDeclared",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Dividends, Per Share, Declared",
        "terseLabel": "Cash dividends declared per common share",
        "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding."
       }
      }
     },
     "auth_ref": [
      "r129"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common Stock",
        "label": "Common Stock [Member]",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r846",
      "r847",
      "r848",
      "r850",
      "r851",
      "r852",
      "r855",
      "r979",
      "r980",
      "r983",
      "r1078",
      "r1150",
      "r1151"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Par or Stated Value Per Share",
        "terseLabel": "Common stock, par value (in dollars per share)",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r98"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares Authorized",
        "terseLabel": "Common stock, authorized (in shares)",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r98",
      "r714"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares, Issued",
        "terseLabel": "Common stock, issued (in shares)",
        "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": [
      "r98"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares, Outstanding",
        "terseLabel": "Common stock, outstanding (in shares)",
        "periodStartLabel": "Common Stock, Shares, Outstanding, Beginning Balance",
        "periodEndLabel": "Common Stock, Shares, Outstanding, Ending Balance",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r98",
      "r714",
      "r732",
      "r1151",
      "r1152"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Value, Issued",
        "terseLabel": "Common stock, par value $.001; 70,000,000 shares authorized; 24,302,825 and 24,186,962 shares issued at March 31, 2025 and December 31, 2024, respectively; 18,426,295 and 18,666,290 shares outstanding at March 31, 2025 and December 31, 2024, respectively",
        "verboseLabel": "Common stock, par value $.001; 70,000,000 shares authorized; 24,302,825 and 24,186,962 shares issued at March 31, 2025 and December 31, 2024, respectively; 18,426,295 and 18,666,290 shares outstanding at March 31, 2025 and December 31, 2024, respectively",
        "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": [
      "r98",
      "r650",
      "r838"
     ]
    },
    "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Company Selected Measure"
       }
      }
     },
     "auth_ref": [
      "r912"
     ]
    },
    "ecd_CompActuallyPaidVsNetIncomeTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsNetIncomeTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Net Income [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Net Income"
       }
      }
     },
     "auth_ref": [
      "r911"
     ]
    },
    "ecd_CompActuallyPaidVsOtherMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsOtherMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Other Measure [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Other Measure"
       }
      }
     },
     "auth_ref": [
      "r913"
     ]
    },
    "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return"
       }
      }
     },
     "auth_ref": [
      "r910"
     ]
    },
    "icfi_CompanyOwnedLifeInsurancePoliciesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "CompanyOwnedLifeInsurancePoliciesMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Company owned life insurance policies.",
        "label": "Company Owned Life Insurance Policies [Member]",
        "terseLabel": "Company Owned Life Insurance Policies"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ComprehensiveIncomeNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Comprehensive income, net of tax",
        "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": [
      "r25",
      "r196",
      "r198",
      "r203",
      "r642",
      "r660",
      "r661"
     ]
    },
    "us-gaap_ComprehensiveIncomeNoteTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ComprehensiveIncomeNoteTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccumulatedOtherComprehensiveLoss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Comprehensive Income (Loss) Note [Text Block]",
        "terseLabel": "Accumulated Other Comprehensive Loss",
        "documentation": "The entire disclosure for comprehensive income, which includes, but is not limited to, 1) the amount of income tax expense or benefit allocated to each component of other comprehensive income, including reclassification adjustments, 2) the reclassification adjustments for each classification of other comprehensive income and 3) the ending accumulated balances for each component of comprehensive income."
       }
      }
     },
     "auth_ref": [
      "r106",
      "r202",
      "r641",
      "r658"
     ]
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskBenchmarkDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Benchmark [Domain]",
        "terseLabel": "Concentration Risk Benchmark",
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r35",
      "r81",
      "r82",
      "r282",
      "r772"
     ]
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Benchmark [Axis]",
        "terseLabel": "Concentration Risk Benchmark",
        "documentation": "Information by benchmark of concentration risk."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r35",
      "r81",
      "r82",
      "r282",
      "r693",
      "r772"
     ]
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskByTypeAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Type [Axis]",
        "terseLabel": "Concentration Risk Type",
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r35",
      "r81",
      "r82",
      "r282",
      "r772",
      "r950"
     ]
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskPercentage1",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk, Percentage",
        "terseLabel": "Revenue from clients, Percent",
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r35",
      "r81",
      "r82",
      "r282"
     ]
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskTypeDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Type [Domain]",
        "terseLabel": "Concentration Risk Type",
        "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r35",
      "r81",
      "r82",
      "r282",
      "r772"
     ]
    },
    "icfi_ContractReceivablesAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "ContractReceivablesAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract receivables.",
        "label": "Contract Receivables [Axis]"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_ContractReceivablesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "ContractReceivablesDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract receivables.",
        "label": "Contract Receivables [Domain]"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_ContractReceivablesSoldButNotYetCollectedFromCustomers": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "ContractReceivablesSoldButNotYetCollectedFromCustomers",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom2",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Billed receivables sold but have not yet been collected from customers",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance",
        "label": "Contract Receivables Sold But Not Yet Collected From Customers",
        "documentation": "Contract receivables sold but not yet collected from customers."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Contract Assets and Liabilities",
        "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]",
        "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": [
      "r1038"
     ]
    },
    "us-gaap_ContractWithCustomerAssetNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerAssetNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail": {
       "parentTag": "icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Asset, after Allowance for Credit Loss, Current",
        "terseLabel": "Contract assets",
        "verboseLabel": "Contract assets",
        "totalLabel": "Contract with Customer, Asset, after Allowance for Credit Loss, Current, Total",
        "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 current."
       }
      }
     },
     "auth_ref": [
      "r437",
      "r439",
      "r450"
     ]
    },
    "icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "ContractWithCustomerAssetsLiabilitiesNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract with customer assets (liabilities), net current.",
        "label": "Contract With Customer Assets Liabilities Net Current",
        "totalLabel": "Net contract assets (liabilities)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerBasisOfPricingAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerBasisOfPricingAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Basis of Pricing [Axis]",
        "terseLabel": "Contract with Customer, Basis of Pricing",
        "documentation": "Information by basis of pricing for contract representing right to consideration in exchange for good or service transferred to customer."
       }
      }
     },
     "auth_ref": [
      "r812",
      "r1039"
     ]
    },
    "us-gaap_ContractWithCustomerBasisOfPricingDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerBasisOfPricingDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Basis of Pricing [Domain]",
        "terseLabel": "Contract with Customer, Basis of Pricing",
        "documentation": "Basis of pricing for contract with customer. Includes, but is not limited to, fixed-price and time-and-materials contracts."
       }
      }
     },
     "auth_ref": [
      "r812",
      "r1039"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail": {
       "parentTag": "icfi_ContractWithCustomerAssetsLiabilitiesNetCurrent",
       "weight": -1.0,
       "order": 1.0
      },
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureRevenueRecognitionScheduleOfContractAssetsAndLiabilitiesDetail",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Liability, Current",
        "terseLabel": "Contract liabilities",
        "negatedLabel": "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": [
      "r437",
      "r438",
      "r450"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerLiabilityRevenueRecognized",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Liability, Revenue Recognized",
        "terseLabel": "Revenue related to contract liabilities",
        "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due."
       }
      }
     },
     "auth_ref": [
      "r451"
     ]
    },
    "icfi_CostBasedContractMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "CostBasedContractMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cost based contract.",
        "label": "Cost Based Contract [Member]",
        "terseLabel": "Cost-Based"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfGoodsAndServicesSold",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of Goods and Services Sold",
        "terseLabel": "Direct costs",
        "totalLabel": "Total direct costs",
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities."
       }
      }
     },
     "auth_ref": [
      "r111",
      "r112",
      "r635"
     ]
    },
    "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": []
    },
    "icfi_CreativeSystemsAndConsultingAcquisitionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "CreativeSystemsAndConsultingAcquisitionMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Creative systems and consulting acquisition.",
        "label": "Creative Systems And Consulting Acquisition [Member]",
        "terseLabel": "Creative Systems and Consulting Acquisition"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CreditDerivativesByContractTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditDerivativesByContractTypeAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit Derivatives Contract Type [Axis]",
        "documentation": "Information by major type of contract of credit derivatives."
       }
      }
     },
     "auth_ref": [
      "r76"
     ]
    },
    "us-gaap_CreditDerivativesContractTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditDerivativesContractTypeDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit Derivatives Contract Type [Domain]",
        "documentation": "Represents major types of credit derivative contracts."
       }
      }
     },
     "auth_ref": [
      "r76"
     ]
    },
    "us-gaap_CreditFacilityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditFacilityAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit Facility [Axis]",
        "terseLabel": "Credit Facility",
        "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "auth_ref": [
      "r382",
      "r1032"
     ]
    },
    "us-gaap_CreditFacilityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditFacilityDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit Facility [Domain]",
        "terseLabel": "Credit Facility",
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "auth_ref": [
      "r382",
      "r1032",
      "r1033"
     ]
    },
    "icfi_CreditFacilityMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "CreditFacilityMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Credit facility.",
        "label": "Credit Facility [Member]",
        "terseLabel": "Credit Facility"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Fiscal Year End Date",
        "terseLabel": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CustomerConcentrationRiskMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer Concentration Risk [Member]",
        "terseLabel": "Customer Concentration Risk",
        "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer."
       }
      }
     },
     "auth_ref": [
      "r122",
      "r282"
     ]
    },
    "us-gaap_CustomerRelatedIntangibleAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CustomerRelatedIntangibleAssetsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Customer-Related Intangibles",
        "label": "Customer-Related Intangible Assets [Member]",
        "documentation": "Customer-related asset, including, but not limited to, customer lists, and noncontractual customer relationships."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r1011",
      "r1012",
      "r1013",
      "r1014",
      "r1016",
      "r1017",
      "r1019",
      "r1020"
     ]
    },
    "us-gaap_CustomerRelationshipsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CustomerRelationshipsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer Relationships [Member]",
        "terseLabel": "Customer Relationships",
        "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r1011",
      "r1012",
      "r1013",
      "r1014",
      "r1016",
      "r1017",
      "r1019",
      "r1020"
     ]
    },
    "us-gaap_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebt3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt",
        "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": [
      "r125",
      "r211",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r381",
      "r382",
      "r392",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403",
      "r408",
      "r415",
      "r416",
      "r418",
      "r585"
     ]
    },
    "us-gaap_DebtInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument [Axis]",
        "terseLabel": "Debt Instrument",
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r88",
      "r89",
      "r142",
      "r143",
      "r215",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r404",
      "r405",
      "r406",
      "r407",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r803",
      "r804",
      "r805",
      "r806",
      "r807",
      "r837",
      "r974",
      "r1022",
      "r1023",
      "r1024",
      "r1099",
      "r1100"
     ]
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentCarryingAmount",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Gross",
        "terseLabel": "Outstanding Balance before debt issuance costs",
        "totalLabel": "Total",
        "verboseLabel": "Long-term debt outstanding exclusive of unamortized debt issuance costs",
        "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r143",
      "r419"
     ]
    },
    "us-gaap_DebtInstrumentInterestRateDuringPeriod": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentInterestRateDuringPeriod",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Interest Rate During Period",
        "terseLabel": "Average Interest Rate",
        "documentation": "The average effective interest rate during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r91",
      "r411",
      "r1099"
     ]
    },
    "us-gaap_DebtInstrumentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument [Line Items]",
        "terseLabel": "Debt Instrument [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": [
      "r215",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r404",
      "r405",
      "r406",
      "r407",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r417",
      "r803",
      "r804",
      "r805",
      "r806",
      "r807",
      "r837",
      "r974",
      "r1099",
      "r1100"
     ]
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentNameDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Name [Domain]",
        "terseLabel": "Debt Instrument, Name",
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r215",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r404",
      "r405",
      "r406",
      "r407",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r803",
      "r804",
      "r805",
      "r806",
      "r807",
      "r837",
      "r974",
      "r1022",
      "r1023",
      "r1024",
      "r1099",
      "r1100"
     ]
    },
    "us-gaap_DebtInstrumentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Long-Term Debt Instruments [Table]",
        "terseLabel": "Debt Instrument [Table]",
        "documentation": "Disclosure of information about long-term debt instrument or arrangement."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r48",
      "r49",
      "r83",
      "r127",
      "r128",
      "r215",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r404",
      "r405",
      "r406",
      "r407",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r417",
      "r803",
      "r804",
      "r805",
      "r806",
      "r807",
      "r837",
      "r974",
      "r1099",
      "r1100"
     ]
    },
    "us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Unamortized Discount (Premium) and Debt Issuance Costs, Net",
        "terseLabel": "Unamortized debt issuance costs",
        "negatedLabel": "Unamortized debt issuance costs",
        "totalLabel": "Debt Instrument, Unamortized Discount (Premium) and Debt Issuance Costs, Net, Total",
        "documentation": "Amount of unamortized debt discount (premium) and debt issuance costs."
       }
      }
     },
     "auth_ref": [
      "r404",
      "r420",
      "r584",
      "r585",
      "r586",
      "r804",
      "r805",
      "r837"
     ]
    },
    "us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentUnusedBorrowingCapacityAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Unused Borrowing Capacity, Amount",
        "terseLabel": "Unused borrowing capacity amount",
        "documentation": "Amount of unused borrowing capacity under the long-term financing arrangement that is available to the entity as of the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r92",
      "r381"
     ]
    },
    "icfi_DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "DeferredCompensationInvestmentsInCashSurrenderLifeInsuranceMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred compensation investments in cash surrender life insurance.",
        "label": "Deferred Compensation Investments In Cash Surrender Life Insurance [Member]",
        "terseLabel": "Deferred Compensation Investments in Cash Surrender Life Insurance"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_DeferredCompensationPlanLiabilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "DeferredCompensationPlanLiabilitiesMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred compensation plan liabilities.",
        "label": "Deferred Compensation Plan Liabilities [Member]",
        "terseLabel": "Deferred Compensation Plan Liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxAssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred income taxes",
        "label": "Deferred Income Tax Assets, Net",
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r502",
      "r503"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-cash deferred income tax expense (benefit)",
        "label": "Deferred Income Tax Expense (Benefit)",
        "totalLabel": "Deferred Income Tax Expense (Benefit), Total",
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r161",
      "r976"
     ]
    },
    "icfi_DelayedDrawTermLoanFacilityMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "DelayedDrawTermLoanFacilityMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Delayed draw term loan facility.",
        "label": "Delayed Draw Term Loan Facility [Member]",
        "terseLabel": "Delayed Draw Term Loan Facility"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DelayedDrawTermLoanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DelayedDrawTermLoanMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Delayed-Draw Term Loan",
        "label": "Delayed Draw Term Loan (DDTL) [Member]",
        "documentation": "Term loan allowing borrower to withdraw predefined amount of preapproved loan within predetermined period."
       }
      }
     },
     "auth_ref": [
      "r1148",
      "r1149"
     ]
    },
    "us-gaap_DepositLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DepositLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deposit Liability, Current",
        "terseLabel": "Deposits",
        "documentation": "The current portion, due within one year or one operating cycle, if longer, of deposits held other than customer deposits."
       }
      }
     },
     "auth_ref": [
      "r89"
     ]
    },
    "us-gaap_DepreciationAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DepreciationAndAmortization",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciation, Depletion and Amortization, Nonproduction",
        "terseLabel": "Depreciation and amortization",
        "totalLabel": "Depreciation, Depletion and Amortization, Nonproduction, Total",
        "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": [
      "r11",
      "r46"
     ]
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DepreciationDepletionAndAmortization",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciation, Depletion and Amortization",
        "terseLabel": "Depreciation and amortization",
        "totalLabel": "Depreciation, Depletion and Amortization, Total",
        "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": [
      "r11",
      "r246",
      "r258",
      "r276",
      "r791",
      "r792"
     ]
    },
    "us-gaap_DerivativeContractTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DerivativeContractTypeDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Contract [Domain]",
        "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset."
       }
      }
     },
     "auth_ref": [
      "r703",
      "r705",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r727",
      "r728",
      "r729",
      "r730",
      "r740",
      "r741",
      "r742",
      "r743",
      "r746",
      "r747",
      "r748",
      "r749",
      "r761",
      "r763",
      "r766",
      "r768",
      "r846",
      "r848",
      "r1085",
      "r1086",
      "r1087",
      "r1088",
      "r1089",
      "r1090",
      "r1092",
      "r1093"
     ]
    },
    "us-gaap_DerivativeFixedInterestRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DerivativeFixedInterestRate",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative, Fixed Interest Rate",
        "terseLabel": "Derivative fixed interest rate",
        "documentation": "Fixed interest rate related to the interest rate derivative."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DerivativeInstrumentRiskAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DerivativeInstrumentRiskAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Instrument [Axis]",
        "documentation": "Information by type of derivative contract."
       }
      }
     },
     "auth_ref": [
      "r71",
      "r74",
      "r75",
      "r138",
      "r703",
      "r705",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r727",
      "r728",
      "r729",
      "r730",
      "r740",
      "r741",
      "r742",
      "r743",
      "r746",
      "r747",
      "r748",
      "r749",
      "r761",
      "r763",
      "r766",
      "r768",
      "r781",
      "r846",
      "r848",
      "r1085",
      "r1086",
      "r1087",
      "r1088",
      "r1089",
      "r1090",
      "r1092",
      "r1093"
     ]
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Instruments and Hedging Activities Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivities1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Instruments and Hedging Activities Disclosure [Text Block]",
        "terseLabel": "Derivative Instruments and Hedging Activities",
        "documentation": "The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts."
       }
      }
     },
     "auth_ref": [
      "r137",
      "r544",
      "r551"
     ]
    },
    "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DerivativeInstrumentsGainLossByHedgingRelationshipAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Hedging Relationship [Axis]",
        "documentation": "Information by type of hedging relationship."
       }
      }
     },
     "auth_ref": [
      "r17",
      "r71",
      "r74"
     ]
    },
    "us-gaap_DerivativeLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DerivativeLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative [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": [
      "r551"
     ]
    },
    "us-gaap_DerivativeMaturityDates": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DerivativeMaturityDates",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative, Contract End Date",
        "terseLabel": "Maturity date",
        "documentation": "Date derivative contract ends, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r704",
      "r705",
      "r761",
      "r762",
      "r764",
      "r765",
      "r767",
      "r848"
     ]
    },
    "us-gaap_DerivativeNotionalAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DerivativeNotionalAmount",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative, Notional Amount",
        "terseLabel": "Notional amount",
        "documentation": "Nominal or face amount used to calculate payment on derivative."
       }
      }
     },
     "auth_ref": [
      "r1075",
      "r1076"
     ]
    },
    "us-gaap_DerivativeTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DerivativeTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative [Table]",
        "documentation": "Disclosure of information about derivative instrument or group of derivative instruments, including, but not limited to, type of derivative instrument, risk being hedged, notional amount, hedge designation, related hedged item, inception date, and maturity date."
       }
      }
     },
     "auth_ref": [
      "r17",
      "r65",
      "r66",
      "r67",
      "r69",
      "r72",
      "r74",
      "r77",
      "r78",
      "r79",
      "r551"
     ]
    },
    "us-gaap_DesignatedAsHedgingInstrumentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DesignatedAsHedgingInstrumentMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Designated as Hedging Instrument [Member]",
        "terseLabel": "Designated as Hedging Instrument",
        "documentation": "Derivative instrument designated as hedging instrument under Generally Accepted Accounting Principles (GAAP)."
       }
      }
     },
     "auth_ref": [
      "r17"
     ]
    },
    "us-gaap_DevelopedTechnologyRightsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DevelopedTechnologyRightsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Developed Technology Rights [Member]",
        "terseLabel": "Developed Technology",
        "documentation": "Rights to developed technology, which can include the right to develop, use, market, sell, or offer for sale products, compounds, or intellectual property."
       }
      }
     },
     "auth_ref": [
      "r134",
      "r1011",
      "r1012",
      "r1013",
      "r1014",
      "r1016",
      "r1017",
      "r1019",
      "r1020"
     ]
    },
    "icfi_DirectLaborAndRelatedFringeCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "DirectLaborAndRelatedFringeCosts",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Direct Labor And Related Fringe Costs",
        "documentation": "Direct labor and related fringe costs.",
        "terseLabel": "Direct labor and related fringe costs"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisaggregationOfRevenueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Line Items]",
        "terseLabel": "Disaggregation Of Revenue [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": [
      "r449",
      "r809",
      "r810",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Table]",
        "terseLabel": "Disaggregation Of Revenue [Table]",
        "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor."
       }
      }
     },
     "auth_ref": [
      "r449",
      "r809",
      "r810",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Table Text Block]",
        "terseLabel": "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": [
      "r1039"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based Compensation",
        "label": "Share-Based Payment Arrangement [Text Block]",
        "documentation": "The entire disclosure for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r462",
      "r467",
      "r495",
      "r496",
      "r498",
      "r822"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisposalGroupsIncludingDiscontinuedOperationsNameDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disposal Group Name [Domain]",
        "documentation": "Name of disposal group."
       }
      }
     },
     "auth_ref": [
      "r819",
      "r820"
     ]
    },
    "us-gaap_DividendPayableDateToBePaidDayMonthAndYear": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DividendPayableDateToBePaidDayMonthAndYear",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends Payable, Date to be Paid",
        "terseLabel": "Dividend payment date",
        "documentation": "Date the declared dividend will be paid, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r32"
     ]
    },
    "us-gaap_DividendsCommonStockCash": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DividendsCommonStockCash",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Dividends declared",
        "label": "Dividends, Common Stock, Cash",
        "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash."
       }
      }
     },
     "auth_ref": [
      "r129"
     ]
    },
    "us-gaap_DividendsPayableAmountPerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DividendsPayableAmountPerShare",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends Payable, Amount Per Share",
        "terseLabel": "Cash dividend per share",
        "documentation": "The per share amount of a dividend declared, but not paid, as of the financial reporting date."
       }
      }
     },
     "auth_ref": [
      "r32"
     ]
    },
    "us-gaap_DividendsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DividendsPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends Payable, Current",
        "terseLabel": "Accrued dividends",
        "verboseLabel": "Dividends",
        "documentation": "Carrying value as of the balance sheet date of dividends declared but unpaid on equity securities issued by the entity and outstanding. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r89"
     ]
    },
    "us-gaap_DividendsPayableDateDeclaredDayMonthAndYear": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DividendsPayableDateDeclaredDayMonthAndYear",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends Payable, Date Declared",
        "terseLabel": "Dividend declaration date",
        "documentation": "Date the dividend to be paid was declared, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r32"
     ]
    },
    "us-gaap_DividendsPayableDateOfRecordDayMonthAndYear": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DividendsPayableDateOfRecordDayMonthAndYear",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends Payable, Date of Record",
        "terseLabel": "Dividend record date",
        "documentation": "Date the holder must own the stock to be entitled to the dividend, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Period Focus",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Year Focus",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period End Date",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Quarterly Report",
        "terseLabel": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r862"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Transition Report",
        "terseLabel": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r894"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentType",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Type",
        "terseLabel": "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": []
    },
    "ecd_DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member]",
        "terseLabel": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year"
       }
      }
     },
     "auth_ref": [
      "r905"
     ]
    },
    "icfi_ESACAcquisitionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "ESACAcquisitionMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ESAC acquisition.",
        "label": "E S A C Acquisition [Member]",
        "terseLabel": "ESAC Acquisition"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "terseLabel": "Notes Tables",
        "verboseLabel": "Earnings per Share:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Basic",
        "terseLabel": "Basic",
        "totalLabel": "Earnings Per Share, Basic, Total",
        "verboseLabel": "Basic EPS",
        "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": [
      "r204",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r226",
      "r232",
      "r234",
      "r239",
      "r240",
      "r241",
      "r245",
      "r528",
      "r533",
      "r554",
      "r555",
      "r643",
      "r662",
      "r783"
     ]
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Diluted EPS",
        "label": "Earnings Per Share, Diluted",
        "terseLabel": "Diluted",
        "totalLabel": "Earnings Per Share, Diluted, Total",
        "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": [
      "r204",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r226",
      "r234",
      "r239",
      "r240",
      "r241",
      "r245",
      "r528",
      "r533",
      "r554",
      "r555",
      "r643",
      "r662",
      "r783"
     ]
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShare"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Text Block]",
        "terseLabel": "Earnings Per Share",
        "documentation": "The entire disclosure for earnings per share."
       }
      }
     },
     "auth_ref": [
      "r231",
      "r242",
      "r243",
      "r244"
     ]
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations",
        "terseLabel": "Effect of Exchange Rate Changes on Cash, Cash Equivalents, and Restricted Cash",
        "totalLabel": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations, Total",
        "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; including, but not limited to, 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": [
      "r1096"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation, Percent",
        "terseLabel": "Effective tax rate",
        "totalLabel": "Effective tax rate",
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r505",
      "r823"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent",
        "terseLabel": "Statutory tax rate",
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)."
       }
      }
     },
     "auth_ref": [
      "r214",
      "r505",
      "r519",
      "r823"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Percent",
        "terseLabel": "Section 987 regulations",
        "documentation": "Percentage 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 applicable to statutory income tax expense (benefit) outside of the country of domicile."
       }
      }
     },
     "auth_ref": [
      "r506",
      "r509",
      "r823",
      "r977",
      "r1067"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-Based Payment Arrangement, Percent",
        "terseLabel": "Equity-based compensation",
        "documentation": "Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r823",
      "r977",
      "r1067",
      "r1069"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other",
        "label": "Effective Income Tax Rate Reconciliation, Other Reconciling Items, Percent",
        "documentation": "Percentage of reported income tax benefit (expense) from difference to income tax expense (benefit) computed by applying statutory federal (national) income tax rate to pretax income (loss) from continuing operation, attributable to other reconciling items. Excludes state and local income tax expense (benefit), federal tax expense (benefit), statutory income tax expense (benefit) outside of country of domicile, tax credit, nondeductible expense, deduction, income tax settlement, income tax contingency, and cross-border tax law."
       }
      }
     },
     "auth_ref": [
      "r1068"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent",
        "terseLabel": "State taxes, net of federal benefit",
        "documentation": "Percentage 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 applicable to state and local income tax expense (benefit), net of federal tax expense (benefit)."
       }
      }
     },
     "auth_ref": [
      "r508",
      "r823",
      "r977",
      "r1067"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateReconciliationTaxCredits",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Tax credits",
        "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Percent",
        "totalLabel": "Effective Income Tax Rate Reconciliation, Tax Credit, Percent, Total",
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits."
       }
      }
     },
     "auth_ref": [
      "r510",
      "r511",
      "r977",
      "r1067"
     ]
    },
    "icfi_EffectiveIncomeTaxRateReconciliationUncertainTaxPosition": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "EffectiveIncomeTaxRateReconciliationUncertainTaxPosition",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation Uncertain Tax Position",
        "documentation": "Effective income tax rate reconciliation uncertain tax position.",
        "terseLabel": "Uncertain tax position"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee-related Liabilities, Current",
        "terseLabel": "Accrued salaries and benefits",
        "totalLabel": "Employee-related Liabilities, Current, Total",
        "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": [
      "r89"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Unrecognized compensation expense",
        "totalLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount",
        "terseLabel": "Stock-Based Compensation Unrecognized",
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r497"
     ]
    },
    "icfi_EmployeeStockAwardsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "EmployeeStockAwardsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Employee stock awards member.",
        "label": "Employee Stock Awards [Member]",
        "terseLabel": "Employee Stock Awards"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeStockOptionMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Option [Member]",
        "terseLabel": "Employee Stock Option",
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time."
       }
      }
     },
     "auth_ref": []
    },
    "icfi_EnergyEnvironmentInfrastructureAndDisasterRecoveryMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "EnergyEnvironmentInfrastructureAndDisasterRecoveryMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Energy, environment, infrastructure, and disaster recovery.",
        "label": "Energy, Environment, Infrastructure, And Disaster Recovery [Member]",
        "terseLabel": "Energy, Environment, Infrastructure, and Disaster Recovery"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line One",
        "terseLabel": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, City or Town",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Postal Zip Code",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, State or Province",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Central Index Key",
        "terseLabel": "Entity Central Index Key",
        "verboseLabel": "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": [
      "r860"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Common Stock, Shares Outstanding",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Current Reporting Status",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "terseLabel": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r860"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities Act File Number",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Filer Category",
        "terseLabel": "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": [
      "r860"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Incorporation, State or Country Code",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Interactive Data Current",
        "terseLabel": "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": [
      "r944"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "verboseLabel": "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": [
      "r860"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Shell Company",
        "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": [
      "r860"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "terseLabel": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r860"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Tax Identification Number",
        "terseLabel": "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": [
      "r860"
     ]
    },
    "ecd_EqtyAwrdsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsAdjFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments, Footnote [Text Block]",
        "terseLabel": "Equity Awards Adjustments, Footnote"
       }
      }
     },
     "auth_ref": [
      "r899"
     ]
    },
    "ecd_EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member]",
        "terseLabel": "Equity Awards Adjustments, Excluding Value Reported in Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r940"
     ]
    },
    "ecd_EqtyAwrdsAdjsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsAdjsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments [Member]",
        "terseLabel": "Equity Awards Adjustments"
       }
      }
     },
     "auth_ref": [
      "r940"
     ]
    },
    "ecd_EqtyAwrdsInSummryCompstnTblForAplblYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsInSummryCompstnTblForAplblYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member]",
        "terseLabel": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r940"
     ]
    },
    "us-gaap_EquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityClassOfTreasuryStockLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityClassOfTreasuryStockLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity, Class of Treasury Stock [Line Items]",
        "terseLabel": "Equity Class Of Treasury Stock [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": []
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails",
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Component [Domain]",
        "terseLabel": "Equity Component",
        "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": [
      "r16",
      "r179",
      "r199",
      "r200",
      "r201",
      "r216",
      "r217",
      "r218",
      "r220",
      "r225",
      "r227",
      "r229",
      "r247",
      "r317",
      "r318",
      "r353",
      "r436",
      "r517",
      "r518",
      "r525",
      "r526",
      "r527",
      "r529",
      "r532",
      "r533",
      "r545",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r553",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r587",
      "r589",
      "r598",
      "r658",
      "r686",
      "r687",
      "r688",
      "r701",
      "r752"
     ]
    },
    "ecd_EquityValuationAssumptionDifferenceFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EquityValuationAssumptionDifferenceFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Valuation Assumption Difference, Footnote [Text Block]",
        "terseLabel": "Equity Valuation Assumption Difference, Footnote"
       }
      }
     },
     "auth_ref": [
      "r909"
     ]
    },
    "ecd_ErrCompAnalysisTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ErrCompAnalysisTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Erroneous Compensation Analysis [Text Block]",
        "terseLabel": "Erroneous Compensation Analysis"
       }
      }
     },
     "auth_ref": [
      "r867",
      "r877",
      "r887",
      "r919"
     ]
    },
    "ecd_ErrCompRecoveryTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ErrCompRecoveryTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Erroneously Awarded Compensation Recovery [Table]",
        "terseLabel": "Erroneously Awarded Compensation Recovery"
       }
      }
     },
     "auth_ref": [
      "r864",
      "r874",
      "r884",
      "r916"
     ]
    },
    "ecd_ExecutiveCategoryAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ExecutiveCategoryAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Executive Category [Axis]",
        "terseLabel": "Executive Category:"
       }
      }
     },
     "auth_ref": [
      "r915"
     ]
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]",
        "terseLabel": "Fair Value Assets And Liabilities Measured On Recurring And Nonrecurring Basis [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": [
      "r557",
      "r558",
      "r568",
      "r826"
     ]
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Recurring and Nonrecurring [Table]",
        "terseLabel": "Fair Value Assets And Liabilities Measured On Recurring And Nonrecurring Basis [Table]",
        "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis."
       }
      }
     },
     "auth_ref": [
      "r557",
      "r558",
      "r568",
      "r826"
     ]
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Measurements, Recurring and Nonrecurring [Table Text Block]",
        "terseLabel": "Schedule of Financial Instruments Measured at Fair Value on Recurring Basis",
        "documentation": "Tabular disclosure of financial instrument measured at fair value on recurring or nonrecurring basis. Includes, but is not limited to, instrument classified in shareholders' equity."
       }
      }
     },
     "auth_ref": [
      "r826",
      "r1080",
      "r1081",
      "r1092"
     ]
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Hierarchy and NAV [Axis]",
        "terseLabel": "Level 1",
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient."
       }
      }
     },
     "auth_ref": [
      "r406",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r556",
      "r558",
      "r559",
      "r560",
      "r561",
      "r567",
      "r568",
      "r570",
      "r605",
      "r606",
      "r607",
      "r804",
      "r805",
      "r816",
      "r817",
      "r818",
      "r826",
      "r830"
     ]
    },
    "us-gaap_FairValueByMeasurementFrequencyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueByMeasurementFrequencyAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measurement Frequency [Axis]",
        "terseLabel": "Measurement Frequency",
        "documentation": "Information by measurement frequency."
       }
      }
     },
     "auth_ref": [
      "r557",
      "r558",
      "r559",
      "r561",
      "r826",
      "r1083",
      "r1094"
     ]
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueDisclosuresAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueDisclosuresTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValue"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Text Block]",
        "terseLabel": "Fair Value",
        "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": [
      "r563",
      "r565",
      "r566",
      "r567",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r638",
      "r826",
      "r831"
     ]
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueInputsLevel1Member",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Inputs, Level 1 [Member]",
        "terseLabel": "Level 1",
        "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date."
       }
      }
     },
     "auth_ref": [
      "r406",
      "r454",
      "r459",
      "r558",
      "r568",
      "r605",
      "r816",
      "r817",
      "r818",
      "r826"
     ]
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueInputsLevel2Member",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Inputs, Level 2 [Member]",
        "terseLabel": "Level 2",
        "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets."
       }
      }
     },
     "auth_ref": [
      "r406",
      "r454",
      "r459",
      "r558",
      "r559",
      "r568",
      "r606",
      "r804",
      "r805",
      "r816",
      "r817",
      "r818",
      "r826"
     ]
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueInputsLevel3Member",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Inputs, Level 3 [Member]",
        "terseLabel": "Level 3",
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing."
       }
      }
     },
     "auth_ref": [
      "r406",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r558",
      "r559",
      "r560",
      "r561",
      "r568",
      "r607",
      "r804",
      "r805",
      "r816",
      "r817",
      "r818",
      "r826",
      "r830"
     ]
    },
    "us-gaap_FairValueMeasurementFrequencyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueMeasurementFrequencyDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measurement Frequency [Domain]",
        "terseLabel": "Measurement Frequency",
        "documentation": "Measurement frequency."
       }
      }
     },
     "auth_ref": [
      "r557",
      "r558",
      "r559",
      "r561",
      "r826",
      "r1083",
      "r1094"
     ]
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Hierarchy and NAV [Domain]",
        "terseLabel": "Fair Value Hierarchy and NAV",
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value."
       }
      }
     },
     "auth_ref": [
      "r406",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r556",
      "r558",
      "r559",
      "r560",
      "r561",
      "r567",
      "r568",
      "r570",
      "r605",
      "r606",
      "r607",
      "r804",
      "r805",
      "r816",
      "r817",
      "r818",
      "r826",
      "r830"
     ]
    },
    "us-gaap_FairValueMeasurementsRecurringMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueMeasurementsRecurringMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Recurring [Member]",
        "terseLabel": "Fair Value, Recurring",
        "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value."
       }
      }
     },
     "auth_ref": [
      "r826",
      "r1080",
      "r1081",
      "r1082",
      "r1083",
      "r1084",
      "r1094"
     ]
    },
    "icfi_FebruaryTwentyEightTwoThousandTwentyEightMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "FebruaryTwentyEightTwoThousandTwentyEightMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "February 28, 2028.",
        "label": "February Twenty Eight Two Thousand Twenty Eight [Member]",
        "terseLabel": "February 28, 2028"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_FebruaryTwentyEightTwoThousandTwentyFiveMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "FebruaryTwentyEightTwoThousandTwentyFiveMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "February 28, 2025",
        "documentation": "February 28, 2025.",
        "label": "February Twenty Eight Two Thousand Twenty Five [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FederalFundsEffectiveSwapRateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FederalFundsEffectiveSwapRateMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fed Funds Effective Rate Overnight Index Swap Rate [Member]",
        "terseLabel": "Fed Funds Effective Rate Overnight Index Swap Rate",
        "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap having its variable-rate leg referenced to Federal Funds effective rate with no additional spread over Federal Funds effective rate on that variable-rate leg."
       }
      }
     },
     "auth_ref": [
      "r1077"
     ]
    },
    "us-gaap_FinanceLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiability",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails2": {
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails3": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTotalLabel": "Total lease liabilities",
        "negatedLabel": "Total lease liabilities",
        "label": "Finance Lease, Liability",
        "totalLabel": "Total lease liabilities",
        "terseLabel": "Total lease liabilities",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease."
       }
      }
     },
     "auth_ref": [
      "r591",
      "r595"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails3": {
       "parentTag": "us-gaap_FinanceLeaseLiability",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, Current",
        "terseLabel": "Finance lease liabilities",
        "verboseLabel": "Lease liabilities - current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r591"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails3": {
       "parentTag": "us-gaap_FinanceLeaseLiability",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, Noncurrent",
        "terseLabel": "Finance lease liabilities - non-current",
        "verboseLabel": "Lease liabilities - non-current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r591"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails2": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, to be Paid",
        "terseLabel": "Total future minimum lease payments",
        "totalLabel": "Total future minimum lease payments",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease."
       }
      }
     },
     "auth_ref": [
      "r595"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueAfterYearFive",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, to be Paid, after Year Five",
        "terseLabel": "Thereafter",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid 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": [
      "r595"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, to be Paid, Year One",
        "terseLabel": "March 31, 2026",
        "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": [
      "r595"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearFive",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, to be Paid, Year Five",
        "terseLabel": "March 31, 2030",
        "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": [
      "r595"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearFour",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, to be Paid, Year Four",
        "terseLabel": "March 30, 2029",
        "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": [
      "r595"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearThree",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, to be Paid, Year Three",
        "terseLabel": "March 30, 2028",
        "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": [
      "r595"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, to be Paid, Year Two",
        "terseLabel": "March 31, 2027",
        "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": [
      "r595"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails2": {
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, Undiscounted Excess Amount",
        "negatedLabel": "Less: Interest",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease."
       }
      }
     },
     "auth_ref": [
      "r595"
     ]
    },
    "icfi_FinanceLeasesTerminationLeaseTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "FinanceLeasesTerminationLeaseTerm",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finance leases, termination lease term.",
        "label": "Finance Leases, Termination Lease Term",
        "terseLabel": "Finance leases, termination lease term"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinancialInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancialInstrumentAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Instrument [Axis]",
        "terseLabel": "Financial Instrument",
        "documentation": "Information by type of financial instrument."
       }
      }
     },
     "auth_ref": [
      "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",
      "r313",
      "r314",
      "r315",
      "r320",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r417",
      "r434",
      "r551",
      "r575",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622",
      "r623",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r659",
      "r800",
      "r826",
      "r828",
      "r830",
      "r831",
      "r832",
      "r833",
      "r834",
      "r835",
      "r836",
      "r839",
      "r953",
      "r954",
      "r955",
      "r956",
      "r957",
      "r958",
      "r959",
      "r994",
      "r995",
      "r996",
      "r997",
      "r1079",
      "r1082",
      "r1083",
      "r1084",
      "r1091",
      "r1094"
     ]
    },
    "us-gaap_FinancialLiabilitiesFairValueDisclosure": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancialLiabilitiesFairValueDisclosure",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Liabilities Fair Value Disclosure",
        "totalLabel": "Financial Liabilities Fair Value Disclosure, Total",
        "terseLabel": "Liabilities, Total",
        "documentation": "Fair value of financial obligations, including, but not limited to, debt instruments, derivative liabilities, federal funds purchased and sold under agreements to repurchase, securities loaned or sold under agreements to repurchase, financial instruments sold not yet purchased, guarantees, line of credit, loans and notes payable, servicing liability, and trading liabilities."
       }
      }
     },
     "auth_ref": [
      "r1080",
      "r1081",
      "r1091"
     ]
    },
    "us-gaap_FinancingReceivableRecordedInvestmentPastDueLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancingReceivableRecordedInvestmentPastDueLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financing Receivable, Past Due [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": [
      "r799",
      "r999"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "terseLabel": "Finite-Lived Intangible Assets by Major Class",
        "documentation": "Information by major type or class of finite-lived intangible assets."
       }
      }
     },
     "auth_ref": [
      "r343",
      "r344",
      "r345",
      "r346",
      "r348",
      "r349",
      "r350",
      "r351",
      "r636",
      "r637",
      "r777"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "terseLabel": "Finite-Lived Intangible Assets, Major Class Name",
        "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": [
      "r343",
      "r344",
      "r345",
      "r346",
      "r348",
      "r349",
      "r350",
      "r351",
      "r777"
     ]
    },
    "us-gaap_FixedPriceContractMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FixedPriceContractMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fixed-Price Contract [Member]",
        "terseLabel": "Fixed-Price",
        "documentation": "Contract with customer in which amount of consideration is fixed."
       }
      }
     },
     "auth_ref": [
      "r812"
     ]
    },
    "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount",
        "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount"
       }
      }
     },
     "auth_ref": [
      "r871",
      "r881",
      "r891",
      "r923"
     ]
    },
    "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Expense of Enforcement, Amount",
        "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount"
       }
      }
     },
     "auth_ref": [
      "r871",
      "r881",
      "r891",
      "r923"
     ]
    },
    "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Violation of Home Country Law, Amount",
        "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount"
       }
      }
     },
     "auth_ref": [
      "r871",
      "r881",
      "r891",
      "r923"
     ]
    },
    "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery, Explanation of Impracticability [Text Block]",
        "terseLabel": "Forgone Recovery, Explanation of Impracticability"
       }
      }
     },
     "auth_ref": [
      "r871",
      "r881",
      "r891",
      "r923"
     ]
    },
    "ecd_ForgoneRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r871",
      "r881",
      "r891",
      "r923"
     ]
    },
    "ecd_FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member]",
        "terseLabel": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year"
       }
      }
     },
     "auth_ref": [
      "r904"
     ]
    },
    "us-gaap_GainLossOnSaleOfBusiness": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GainLossOnSaleOfBusiness",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Gain (Loss) on Disposition of Business",
        "verboseLabel": "Gain on divestiture",
        "negatedLabel": "Gain on divestiture of a business",
        "documentation": "Amount of gain (loss) from sale and disposal of integrated set of activities and assets capable of being conducted and managed for purpose of providing return in form of dividend, lower cost, or other economic benefit to investor, owner, member and participant."
       }
      }
     },
     "auth_ref": [
      "r540",
      "r971"
     ]
    },
    "us-gaap_Goodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Goodwill",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill",
        "terseLabel": "Goodwill",
        "totalLabel": "Goodwill, Total",
        "periodStartLabel": "Balance as of December 31, 2022",
        "periodEndLabel": "Balance as of June 30, 2023",
        "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": [
      "r185",
      "r330",
      "r639",
      "r792",
      "r801",
      "r827",
      "r838",
      "r1001",
      "r1008"
     ]
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GoodwillDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwill"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill Disclosure [Text Block]",
        "terseLabel": "Goodwill",
        "documentation": "The entire disclosure for goodwill."
       }
      }
     },
     "auth_ref": [
      "r329",
      "r331",
      "r341",
      "r801"
     ]
    },
    "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillForeignCurrencyTranslationGainLoss",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill, Foreign Currency Translation Gain (Loss)",
        "terseLabel": "Effect of foreign currency translation",
        "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) asset representing future economic benefit from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r337"
     ]
    },
    "us-gaap_GoodwillLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill [Line Items]",
        "terseLabel": "Goodwill [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": [
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r342",
      "r801"
     ]
    },
    "us-gaap_GoodwillPurchaseAccountingAdjustments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillPurchaseAccountingAdjustments",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill, Measurement Period Adjustment",
        "verboseLabel": "Measurement period adjustments",
        "terseLabel": "Add: Goodwill resulting from business combination",
        "documentation": "Amount of increase (decrease) from measurement period adjustment 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": [
      "r1",
      "r1007"
     ]
    },
    "us-gaap_GoodwillWrittenOffRelatedToSaleOfBusinessUnit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillWrittenOffRelatedToSaleOfBusinessUnit",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill, Written off Related to Sale of Business Unit",
        "terseLabel": "Minus: Goodwill resulting from business divestiture",
        "negatedLabel": "Less: Goodwill resulting from business divestiture",
        "documentation": "Amount of divestiture 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": [
      "r335",
      "r801"
     ]
    },
    "icfi_HealthAndSocialProgramsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "HealthAndSocialProgramsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Health and social programs.",
        "label": "Health And Social Programs [Member]",
        "terseLabel": "Health and Social Programs"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_HedgingDesignationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "HedgingDesignationAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Hedging Designation [Axis]",
        "documentation": "Information by designation of purpose of derivative instrument."
       }
      }
     },
     "auth_ref": [
      "r17",
      "r543"
     ]
    },
    "us-gaap_HedgingDesignationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "HedgingDesignationDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Hedging Designation [Domain]",
        "documentation": "Designation of purpose of derivative instrument."
       }
      }
     },
     "auth_ref": [
      "r17"
     ]
    },
    "us-gaap_HedgingRelationshipDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "HedgingRelationshipDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Hedging Relationship [Domain]",
        "documentation": "Nature or intent of a hedge."
       }
      }
     },
     "auth_ref": [
      "r17"
     ]
    },
    "us-gaap_ImpairmentOfLeasehold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ImpairmentOfLeasehold",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Impairment of Leasehold",
        "terseLabel": "Impairment related to leasehold improvement",
        "documentation": "The adjustment to reduce the value of existing agreements that specify the lessee's rights to use the leased property. This expense is charged when the estimates of future profits generated by the leased property are reduced."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r45"
     ]
    },
    "icfi_InConnectionWithVestingOfRestrictedStockUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "InConnectionWithVestingOfRestrictedStockUnitsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "In Connection with Vesting of Restricted Stock Units",
        "label": "In connection with vesting of restricted stock units [Member]",
        "documentation": "In connection with vesting of restricted stock units."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income before income taxes",
        "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": [
      "r110",
      "r147",
      "r151",
      "r644",
      "r655",
      "r785",
      "r791",
      "r985",
      "r987",
      "r988",
      "r989",
      "r990"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disposal Group Name [Axis]",
        "documentation": "Information by name of disposal group."
       }
      }
     },
     "auth_ref": [
      "r819",
      "r820"
     ]
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementLocationAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Income Location, Balance [Axis]",
        "documentation": "Information by location in statement of income where disaggregated amount has been reported."
       }
      }
     },
     "auth_ref": [
      "r354",
      "r361",
      "r366",
      "r562",
      "r564",
      "r569",
      "r683",
      "r685",
      "r737",
      "r777",
      "r829",
      "r1119"
     ]
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementLocationDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Income Location, Balance [Domain]",
        "documentation": "Location in statement of income where disaggregated amount has been reported."
       }
      }
     },
     "auth_ref": [
      "r361",
      "r366",
      "r562",
      "r564",
      "r569",
      "r683",
      "r685",
      "r737",
      "r777",
      "r829",
      "r1119"
     ]
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureIncomeTaxes"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Text Block]",
        "terseLabel": "Income Taxes",
        "documentation": "The entire disclosure for income tax."
       }
      }
     },
     "auth_ref": [
      "r214",
      "r501",
      "r505",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r520",
      "r522",
      "r523",
      "r524",
      "r699",
      "r823"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 1.0
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Expense (Benefit)",
        "terseLabel": "Provision for income taxes",
        "totalLabel": "Income Tax Expense (Benefit), Total",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r154",
      "r162",
      "r228",
      "r229",
      "r246",
      "r261",
      "r276",
      "r504",
      "r505",
      "r521",
      "r663",
      "r823"
     ]
    },
    "us-gaap_IncomeTaxesPaid": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxesPaid",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes Paid",
        "terseLabel": "Income taxes",
        "documentation": "Amount, before refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax."
       }
      }
     },
     "auth_ref": [
      "r31",
      "r120",
      "r972",
      "r1070",
      "r1071"
     ]
    },
    "us-gaap_IncomeTaxesReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxesReceivable",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes Receivable, Current",
        "terseLabel": "Income tax receivable",
        "documentation": "Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes."
       }
      }
     },
     "auth_ref": [
      "r140",
      "r963"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccountsPayable",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 17.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Accounts Payable",
        "terseLabel": "Accounts payable",
        "totalLabel": "Increase (Decrease) in Accounts Payable, Total",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 20.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Accrued Liabilities and Other Operating Liabilities",
        "terseLabel": "Accrued expenses and other current liabilities",
        "documentation": "Amount of increase (decrease) in accrued expenses, and obligations classified as other."
       }
      }
     },
     "auth_ref": [
      "r970"
     ]
    },
    "icfi_IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 19.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase Decrease in accrued subcontractor and other direct costs.",
        "label": "Increase Decrease In Accrued Subcontractor And Other Direct Costs",
        "terseLabel": "Accrued subcontractors and other direct costs"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInCommodityContractAssetsAndLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 13.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Commodity Contract Assets and Liabilities",
        "negatedLabel": "Net contract assets and liabilities",
        "documentation": "The increase (decrease) during the reporting period in the assets (liabilities) created through trading commodity-based derivative instruments."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "icfi_IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase (decrease) in deferred income taxes and unrecognized income tax benefits.",
        "label": "Increase (Decrease) in Deferred Income Taxes and Unrecognized Income Tax Benefits",
        "negatedLabel": "Deferred income taxes and unrecognized income tax benefits"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInEmployeeRelatedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 18.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Employee Related Liabilities",
        "terseLabel": "Accrued salaries and benefits",
        "totalLabel": "Increase (Decrease) in Employee Related Liabilities, Total",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 21.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Income Taxes Payable, Net of Income Taxes Receivable",
        "terseLabel": "Income tax receivable and payable",
        "documentation": "The increase (decrease) during the reporting period in the amounts payable to taxing authorities for taxes that are based on the reporting entity's earnings, net of amounts receivable from taxing authorities for refunds of overpayments or recoveries of income taxes."
       }
      }
     },
     "auth_ref": [
      "r970"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "terseLabel": "Changes in operating assets and liabilities, net of the effects of acquisitions:"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 16.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase (decrease) in operating lease assets and liabilities.",
        "label": "Increase Decrease In Operating Lease Assets And Liabilities",
        "negatedLabel": "Operating lease assets and liabilities, net"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOtherOperatingLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 22.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Other Operating Liabilities",
        "terseLabel": "Other liabilities",
        "totalLabel": "Increase (Decrease) in Other Operating Liabilities, Total",
        "documentation": "Amount of increase (decrease) in operating liabilities classified as other."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 15.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "negatedLabel": "Prepaid expenses and other assets",
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "us-gaap_IncreaseDecreaseInReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInReceivables",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 14.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Receivables",
        "negatedLabel": "Contract receivables",
        "totalLabel": "Increase (Decrease) in Receivables, Total",
        "documentation": "The increase (decrease) during the reporting period in the total amount due within one year (or one operating cycle) from all parties, associated with underlying transactions that are classified as operating activities."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "icfi_IncreaseDecreaseInUnfulfilledPerformanceObligations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "IncreaseDecreaseInUnfulfilledPerformanceObligations",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase Decrease in Unfulfilled Performance Obligations",
        "documentation": "Increase decrease in unfulfilled performance obligations.",
        "terseLabel": "Reduced amount of unfulfilled performance obligations"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails": {
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dilutive effect of stock awards",
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements",
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method."
       }
      }
     },
     "auth_ref": [
      "r235",
      "r236",
      "r237",
      "r241",
      "r466"
     ]
    },
    "ecd_IndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "IndividualAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Individual [Axis]",
        "terseLabel": "Individual:"
       }
      }
     },
     "auth_ref": [
      "r871",
      "r881",
      "r891",
      "r915",
      "r923",
      "r927",
      "r935"
     ]
    },
    "icfi_InitialPerformanceVestingPeriodMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "InitialPerformanceVestingPeriodMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information relating to an initial performance vesting period.",
        "label": "Initial Performance Vesting Period [Member]",
        "terseLabel": "Initial Performance Vesting Period"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_InsiderTradingArrLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTradingArrLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Arrangements [Line Items]",
        "terseLabel": "Insider Trading Arrangements:"
       }
      }
     },
     "auth_ref": [
      "r933"
     ]
    },
    "ecd_InsiderTradingPoliciesProcLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTradingPoliciesProcLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures [Line Items]",
        "terseLabel": "Insider Trading Policies and Procedures:"
       }
      }
     },
     "auth_ref": [
      "r863",
      "r939"
     ]
    },
    "ecd_InsiderTrdPoliciesProcAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTrdPoliciesProcAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures Adopted [Flag]",
        "terseLabel": "Insider Trading Policies and Procedures Adopted"
       }
      }
     },
     "auth_ref": [
      "r863",
      "r939"
     ]
    },
    "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]",
        "terseLabel": "Insider Trading Policies and Procedures Not Adopted"
       }
      }
     },
     "auth_ref": [
      "r863",
      "r939"
     ]
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets, Net (Excluding Goodwill)",
        "terseLabel": "Other intangible assets, net",
        "totalLabel": "Intangible Assets, Net (Excluding Goodwill), Total",
        "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": [
      "r343",
      "r1017",
      "r1018"
     ]
    },
    "icfi_IntangibleAssetsNetExcludingGoodwillMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "IntangibleAssetsNetExcludingGoodwillMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets, Net (Excluding Goodwill) [Member]",
        "documentation": "Intangible assets, net (excluding goodwill).",
        "terseLabel": "Other Intangible Assets, Net"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InterestExpenseNonoperating": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestExpenseNonoperating",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Expense, Nonoperating",
        "totalLabel": "Interest Expense, Nonoperating, Total",
        "terseLabel": "Interest expense",
        "documentation": "Amount of interest expense classified as nonoperating."
       }
      }
     },
     "auth_ref": [
      "r257",
      "r968"
     ]
    },
    "us-gaap_InterestIncomeExpenseNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestIncomeExpenseNet",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Interest Income (Expense), Net, Total",
        "label": "Interest Income (Expense), Operating",
        "terseLabel": "Interest, net",
        "documentation": "Amount of interest income (expense) classified as operating."
       }
      }
     },
     "auth_ref": [
      "r640",
      "r987"
     ]
    },
    "us-gaap_InterestPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities",
        "terseLabel": "Interest",
        "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": [
      "r205",
      "r208",
      "r209"
     ]
    },
    "us-gaap_InterestPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Payable, Current",
        "terseLabel": "Interest",
        "documentation": "Carrying value as of the balance sheet date of [accrued] interest payable on all forms of debt, including trade payables, that has been incurred and is unpaid. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r89"
     ]
    },
    "us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Rate Cash Flow Hedge Gain (Loss) to be Reclassified During Next 12 Months, Net",
        "negatedLabel": "Expects to reclassify unrealized losses related to change in fair value of interest rate hedge agreement from accumulated other comprehensive (loss) income into earnings",
        "documentation": "The estimated net amount of unrealized gains or losses on interest rate cash flow hedges as of the balance sheet date expected to be reclassified to earnings within the next twelve months."
       }
      }
     },
     "auth_ref": [
      "r80"
     ]
    },
    "us-gaap_InterestRateSwapMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestRateSwapMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Rate Swap [Member]",
        "terseLabel": "Interest Rate Swap",
        "documentation": "Forward based contracts in which two parties agree to swap periodic payments that are fixed at the outset of the swap contract with variable payments based on a market interest rate (index rate) over a specified period."
       }
      }
     },
     "auth_ref": [
      "r778",
      "r853",
      "r854"
     ]
    },
    "icfi_InternationalGovernmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "InternationalGovernmentMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "International government.",
        "label": "International Government [Member]",
        "terseLabel": "International Government"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_JuneTwentySevenTwoThousandTwentyEightMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "JuneTwentySevenTwoThousandTwentyEightMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDerivativeInstrumentsAndHedgingActivitiesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "June 27, 2028.",
        "label": "June Twenty Seven Two thousand Twenty Eight [Member]",
        "terseLabel": "June 27, 2028"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LeaseCostTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease, Cost [Table Text Block]",
        "terseLabel": "Summary of Lease Cost",
        "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income."
       }
      }
     },
     "auth_ref": [
      "r1104"
     ]
    },
    "us-gaap_LeasesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LeasesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeFinanceLeaseOptionToExtend": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeFinanceLeaseOptionToExtend",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Finance Lease, Option to Extend",
        "terseLabel": "Finance leases, option to extend lease",
        "documentation": "Description of terms and conditions of option to extend lessee's finance lease. Includes, but is not limited to, information about option recognized as part of right-of-use asset and lease liability."
       }
      }
     },
     "auth_ref": [
      "r593"
     ]
    },
    "us-gaap_LesseeFinanceLeaseOptionToTerminate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeFinanceLeaseOptionToTerminate",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Finance Lease, Option to Terminate",
        "terseLabel": "Finance leases, option to terminate lease",
        "documentation": "Description of terms and conditions of option to terminate lessee's finance lease. Includes, but is not limited to, information about option recognized as part of right-of-use asset and lease liability."
       }
      }
     },
     "auth_ref": [
      "r593"
     ]
    },
    "us-gaap_LesseeFinanceLeaseRemainingLeaseTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeFinanceLeaseRemainingLeaseTerm",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Finance Lease, Remaining Lease Term",
        "terseLabel": "Finance leases, remaining lease term",
        "documentation": "Remaining lease term of finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r597",
      "r1102"
     ]
    },
    "us-gaap_LesseeFinanceLeaseRenewalTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeFinanceLeaseRenewalTerm1",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Finance Lease, Renewal Term",
        "terseLabel": "Finance leases, extendable lease term",
        "documentation": "Term of lessee's finance lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r1103"
     ]
    },
    "us-gaap_LesseeFinanceLeaseResidualValueGuaranteeDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeFinanceLeaseResidualValueGuaranteeDescription",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Finance Lease, Residual Value Guarantee, Description",
        "terseLabel": "Finance leases, residual value guarantee description",
        "documentation": "Description of terms and conditions of residual value guarantee provided by lessee on finance lease."
       }
      }
     },
     "auth_ref": [
      "r594"
     ]
    },
    "us-gaap_LesseeLeaseDescriptionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeLeaseDescriptionLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Lease, Description [Line Items]",
        "terseLabel": "Lessee Lease Description [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": [
      "r592",
      "r597"
     ]
    },
    "us-gaap_LesseeLeaseDescriptionTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeLeaseDescriptionTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Lease, Description [Table]",
        "terseLabel": "Lessee Lease Description [Table]",
        "documentation": "Disclosure of information about lessee's leases."
       }
      }
     },
     "auth_ref": [
      "r592",
      "r597"
     ]
    },
    "icfi_LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lessee operating and finance lease liability maturity.",
        "label": "Lessee Operating and Finance Lease Liability Maturity [Table Text Block]",
        "terseLabel": "Summary of Future Minimum Lease Payments Under Non-Cancellable Operating and Finance Leases"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseExistenceOfOptionToExtend",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Existence of Option to Extend [true false]",
        "terseLabel": "Operating leases, existence of option to extend",
        "documentation": "Indicates (true false) whether lessee has option to extend operating lease."
       }
      }
     },
     "auth_ref": [
      "r593"
     ]
    },
    "us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseExistenceOfOptionToTerminate",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Existence of Option to Terminate [true false]",
        "terseLabel": "Operating leases, existence of option to terminate",
        "documentation": "Indicates (true false) whether lessee has option to terminate operating lease."
       }
      }
     },
     "auth_ref": [
      "r593"
     ]
    },
    "us-gaap_LesseeOperatingLeaseExistenceOfResidualValueGuarantee": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseExistenceOfResidualValueGuarantee",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Existence of Residual Value Guarantee [true false]",
        "terseLabel": "Operating leases, existence of residual value guarantee",
        "documentation": "Indicates (true false) whether lessee provided residual value guarantee for operating lease."
       }
      }
     },
     "auth_ref": [
      "r594"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails2": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "totalLabel": "Total future minimum lease payments",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease."
       }
      }
     },
     "auth_ref": [
      "r595"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid, after Rolling Year Five",
        "terseLabel": "Thereafter",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due after fifth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date."
       }
      }
     },
     "auth_ref": [
      "r1105"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid, Rolling Year Five",
        "terseLabel": "March 31, 2030",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fifth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date."
       }
      }
     },
     "auth_ref": [
      "r1105"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid, Rolling Year Four",
        "terseLabel": "March 30, 2029",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fourth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date."
       }
      }
     },
     "auth_ref": [
      "r1105"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid, Rolling Year Three",
        "terseLabel": "March 30, 2028",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in third rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date."
       }
      }
     },
     "auth_ref": [
      "r1105"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid, Rolling Year Two",
        "terseLabel": "March 31, 2027",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in second rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date."
       }
      }
     },
     "auth_ref": [
      "r1105"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid, Next Rolling 12 Months",
        "terseLabel": "March 31, 2026",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in next rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date."
       }
      }
     },
     "auth_ref": [
      "r1105"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails2": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "negatedLabel": "Less: Interest",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease."
       }
      }
     },
     "auth_ref": [
      "r595"
     ]
    },
    "us-gaap_LesseeOperatingLeaseOptionToExtend": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseOptionToExtend",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Option to Extend",
        "terseLabel": "Operating leases, option to extend lease",
        "documentation": "Description of terms and conditions of option to extend lessee's operating lease. Includes, but is not limited to, information about option recognized as part of right-of-use asset and lease liability."
       }
      }
     },
     "auth_ref": [
      "r593"
     ]
    },
    "us-gaap_LesseeOperatingLeaseOptionToTerminate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseOptionToTerminate",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Option to Terminate",
        "terseLabel": "Operating leases, option to terminate lease",
        "documentation": "Description of terms and conditions of option to terminate lessee's operating lease. Includes, but is not limited to, information about option recognized as part of right-of-use asset and lease liability."
       }
      }
     },
     "auth_ref": [
      "r593"
     ]
    },
    "us-gaap_LesseeOperatingLeaseRemainingLeaseTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseRemainingLeaseTerm",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Remaining Lease Term",
        "terseLabel": "Operating leases, remaining lease term",
        "documentation": "Remaining lease term of operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r597",
      "r1102"
     ]
    },
    "us-gaap_LesseeOperatingLeaseRenewalTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseRenewalTerm",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Renewal Term",
        "terseLabel": "Operating leases, extendable lease term",
        "documentation": "Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r1103"
     ]
    },
    "us-gaap_LesseeOperatingLeaseResidualValueGuaranteeDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseResidualValueGuaranteeDescription",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Residual Value Guarantee, Description",
        "terseLabel": "Operating leases, residual value guarantee description",
        "documentation": "Description of terms and conditions of residual value guarantee provided by lessee on operating lease."
       }
      }
     },
     "auth_ref": [
      "r594"
     ]
    },
    "icfi_LesseeOperatingLeaseTerminationTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "LesseeOperatingLeaseTerminationTerm",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lessee operating lease termination term.",
        "label": "Lessee Operating Lease Termination Term",
        "terseLabel": "Operating leases, termination lease term"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeasesTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeases"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Leases [Text Block]",
        "terseLabel": "Leases",
        "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": [
      "r588"
     ]
    },
    "icfi_LettersOfCreditGuarantees": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "LettersOfCreditGuarantees",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Letters of credit guarantees",
        "label": "Letters of credit guarantees",
        "documentation": "Letters of credit guarantees."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LettersOfCreditOutstandingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LettersOfCreditOutstandingAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Letters of Credit Outstanding, Amount",
        "terseLabel": "Letters of credit outstanding, amount",
        "verboseLabel": "Letters of credit",
        "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Liabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities",
        "totalLabel": "Total Liabilities",
        "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r88",
      "r89",
      "r90",
      "r93",
      "r94",
      "r95",
      "r96",
      "r213",
      "r316",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r536",
      "r541",
      "r542",
      "r576",
      "r712",
      "r784",
      "r858",
      "r1034",
      "r1106",
      "r1107"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Equity",
        "totalLabel": "Total Liabilities and Stockholders\u2019 Equity",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r104",
      "r145",
      "r653",
      "r838",
      "r975",
      "r998",
      "r1095"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Equity [Abstract]",
        "terseLabel": "LIABILITIES AND STOCKHOLDERS' EQUITY"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current",
        "totalLabel": "Total Current Liabilities",
        "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": [
      "r90",
      "r183",
      "r213",
      "r316",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r536",
      "r541",
      "r542",
      "r576",
      "r838",
      "r1034",
      "r1106",
      "r1107"
     ]
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "Current Liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesFairValueDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesFairValueDisclosureAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Fair Value Disclosure [Abstract]",
        "terseLabel": "Liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesNoncurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesNoncurrentAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Noncurrent [Abstract]",
        "terseLabel": "Long-term Liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LineOfCreditFacilityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Lender Name",
        "label": "Lender Name [Axis]",
        "documentation": "Information by name of lender, which may be a single entity (for example, but not limited to, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r92",
      "r974",
      "r1032",
      "r1033"
     ]
    },
    "us-gaap_LineOfCreditFacilityInterestRateDuringPeriod": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityInterestRateDuringPeriod",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility, Interest Rate During Period",
        "terseLabel": "Interest rate on credit facility",
        "documentation": "The effective interest rate during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r92"
     ]
    },
    "us-gaap_LineOfCreditFacilityLenderDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityLenderDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility, Lender [Domain]",
        "terseLabel": "Line of Credit Facility, Lender",
        "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r92",
      "r974",
      "r1032"
     ]
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility, Maximum Borrowing Capacity",
        "terseLabel": "Line of credit facility, maximum borrowing capacity",
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r92"
     ]
    },
    "us-gaap_LineOfCreditMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit [Member]",
        "terseLabel": "Revolving Credit",
        "documentation": "A contractual arrangement with a lender under which borrowings can be made up to a specific amount at any point in time, and under which borrowings outstanding may be either short-term or long-term, depending upon the particulars."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]",
        "terseLabel": "Contract Receivables, Net",
        "documentation": "The entire disclosure for claims held for amounts due to entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses."
       }
      }
     },
     "auth_ref": [
      "r585",
      "r991"
     ]
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "terseLabel": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebt",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails3": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt",
        "totalLabel": "Total",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r143",
      "r405",
      "r421",
      "r804",
      "r805",
      "r837",
      "r1114"
     ]
    },
    "us-gaap_LongTermDebtCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails3": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Current Maturities",
        "terseLabel": "Current portion of long-term debt",
        "totalLabel": "Long-Term Debt, Current Maturities, Total",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r188"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "March 31, 2025",
        "label": "Long-Term Debt, Maturities, Repayments of Principal in Next Rolling 12 Months",
        "verboseLabel": "March 31, 2026",
        "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the next rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r978"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFive",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Maturities, Repayments of Principal in Rolling Year Five",
        "terseLabel": "May 6, 2027 (Maturity)",
        "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the fifth rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r978"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearFour",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Maturities, Repayments of Principal in Rolling Year Four",
        "terseLabel": "May 6, 2027 (Maturity)",
        "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the fourth rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r978"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "March 31, 2027",
        "label": "Long-Term Debt, Maturities, Repayments of Principal in Rolling Year Three",
        "verboseLabel": "May 6, 2027 (Maturity)",
        "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the third rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r978"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "March 31, 2026",
        "label": "Long-Term Debt, Maturities, Repayments of Principal in Rolling Year Two",
        "verboseLabel": "March 31, 2027",
        "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the second rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r978"
     ]
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails3": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Excluding Current Maturities",
        "terseLabel": "Long-term debt",
        "totalLabel": "Long-Term Debt, Excluding Current Maturities, Total",
        "verboseLabel": "Long-term debt - non-current",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r189"
     ]
    },
    "us-gaap_LongtermDebtTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongtermDebtTypeAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Type [Axis]",
        "terseLabel": "Long-Term Debt, Type",
        "documentation": "Information by type of long-term debt."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r1022",
      "r1023",
      "r1024"
     ]
    },
    "us-gaap_LongtermDebtTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongtermDebtTypeDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Type [Domain]",
        "terseLabel": "Long-Term Debt, Type",
        "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r47",
      "r1022",
      "r1023",
      "r1024"
     ]
    },
    "us-gaap_LossContingenciesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LossContingenciesLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loss Contingencies [Line Items]",
        "terseLabel": "Loss Contingencies [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": [
      "r375",
      "r376",
      "r377",
      "r380",
      "r500",
      "r802",
      "r1027",
      "r1028"
     ]
    },
    "us-gaap_LossContingenciesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LossContingenciesTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loss Contingencies [Table]",
        "terseLabel": "Loss Contingencies [Table]",
        "documentation": "Disclosure of information about loss contingency. Excludes environmental contingency, warranty, and unconditional purchase obligation."
       }
      }
     },
     "auth_ref": [
      "r375",
      "r376",
      "r377",
      "r380",
      "r500",
      "r802",
      "r1027",
      "r1028"
     ]
    },
    "icfi_MasterReceivablesPurchaseAgreementWithMufgBankMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "MasterReceivablesPurchaseAgreementWithMufgBankMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Master receivables purchase agreement with MUFG bank.",
        "label": "Master Receivables Purchase Agreement with MUFG Bank [Member]",
        "terseLabel": "Master Receivables Purchase Agreement with MUFG Bank"
       }
      }
     },
     "auth_ref": []
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MaximumMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum",
        "documentation": "Upper limit of the provided range."
       }
      }
     },
     "auth_ref": [
      "r164",
      "r165",
      "r166",
      "r167",
      "r168",
      "r177",
      "r178",
      "r376",
      "r377",
      "r378",
      "r379",
      "r460",
      "r500",
      "r561",
      "r633",
      "r682",
      "r684",
      "r692",
      "r704",
      "r705",
      "r757",
      "r758",
      "r759",
      "r760",
      "r769",
      "r774",
      "r775",
      "r798",
      "r808",
      "r821",
      "r830",
      "r831",
      "r835",
      "r836",
      "r841",
      "r1036",
      "r1108",
      "r1109",
      "r1110",
      "r1111",
      "r1112",
      "r1113"
     ]
    },
    "ecd_MeasureAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MeasureAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure [Axis]",
        "terseLabel": "Measure:"
       }
      }
     },
     "auth_ref": [
      "r907"
     ]
    },
    "ecd_MeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r907"
     ]
    },
    "us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestiture"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Mergers, Acquisitions and Dispositions Disclosures [Text Block]",
        "verboseLabel": "Acquisition and Divestiture",
        "documentation": "The entire disclosure for business combinations, including leverage buyout transactions (as applicable), and divestitures. This may include a description of a business combination or divestiture (or series of individually immaterial business combinations or divestitures) completed during the period, including background, timing, and assets and liabilities recognized and reclassified or sold. This element does not include fixed asset sales and plant closings."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r132"
     ]
    },
    "icfi_MillionShareRepurchaseProgramMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "MillionShareRepurchaseProgramMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "300.0 Million Share Repurchase Program",
        "label": "300.0 Million Share Repurchase Program [Member]",
        "documentation": "300.0 million share repurchase program member."
       }
      }
     },
     "auth_ref": []
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MinimumMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum",
        "documentation": "Lower limit of the provided range."
       }
      }
     },
     "auth_ref": [
      "r164",
      "r165",
      "r166",
      "r167",
      "r168",
      "r177",
      "r178",
      "r376",
      "r377",
      "r378",
      "r379",
      "r460",
      "r500",
      "r561",
      "r633",
      "r682",
      "r684",
      "r692",
      "r704",
      "r705",
      "r757",
      "r758",
      "r759",
      "r760",
      "r769",
      "r774",
      "r775",
      "r798",
      "r808",
      "r821",
      "r830",
      "r831",
      "r835",
      "r841",
      "r1036",
      "r1108",
      "r1109",
      "r1110",
      "r1111",
      "r1112",
      "r1113"
     ]
    },
    "ecd_MnpiDiscTimedForCompValFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MnpiDiscTimedForCompValFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "MNPI Disclosure Timed for Compensation Value [Flag]",
        "terseLabel": "MNPI Disclosure Timed for Compensation Value"
       }
      }
     },
     "auth_ref": [
      "r926"
     ]
    },
    "ecd_MtrlTermsOfTrdArrTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MtrlTermsOfTrdArrTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Terms of Trading Arrangement [Text Block]",
        "terseLabel": "Material Terms of Trading Arrangement"
       }
      }
     },
     "auth_ref": [
      "r934"
     ]
    },
    "ecd_NamedExecutiveOfficersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NamedExecutiveOfficersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Named Executive Officers, Footnote [Text Block]",
        "terseLabel": "Named Executive Officers, Footnote"
       }
      }
     },
     "auth_ref": [
      "r908"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Net Cash Provided by 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": [
      "r207"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Net Cash 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": [
      "r207"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "terseLabel": "Cash Flows from Investing Activities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Net Cash 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": [
      "r118",
      "r119",
      "r121"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "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://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED",
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Income (Loss)",
        "terseLabel": "Net Income (Loss)",
        "totalLabel": "Net income",
        "verboseLabel": "Net Income",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r113",
      "r121",
      "r148",
      "r181",
      "r194",
      "r197",
      "r201",
      "r213",
      "r219",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r228",
      "r229",
      "r238",
      "r316",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r528",
      "r533",
      "r555",
      "r576",
      "r657",
      "r734",
      "r750",
      "r751",
      "r856",
      "r1034"
     ]
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "terseLabel": "Recent 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": []
    },
    "icfi_NonEmployeeDirectorStockAwardsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "NonEmployeeDirectorStockAwardsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Non-Employee Director Stock Awards member.",
        "label": "Non-Employee Director Stock Awards [Member]",
        "terseLabel": "Non-Employee Director Stock Awards"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonGaapMeasureDescriptionTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonGaapMeasureDescriptionTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-GAAP Measure Description [Text Block]",
        "terseLabel": "Non-GAAP Measure Description"
       }
      }
     },
     "auth_ref": [
      "r907"
     ]
    },
    "ecd_NonNeosMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonNeosMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-NEOs [Member]",
        "terseLabel": "Non-NEOs"
       }
      }
     },
     "auth_ref": [
      "r871",
      "r881",
      "r891",
      "r915",
      "r923"
     ]
    },
    "ecd_NonPeoNeoAvgCompActuallyPaidAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonPeoNeoAvgCompActuallyPaidAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO Average Compensation Actually Paid Amount",
        "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount"
       }
      }
     },
     "auth_ref": [
      "r898"
     ]
    },
    "ecd_NonPeoNeoAvgTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonPeoNeoAvgTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO Average Total Compensation Amount",
        "terseLabel": "Non-PEO NEO Average Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r897"
     ]
    },
    "ecd_NonPeoNeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonPeoNeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO [Member]",
        "terseLabel": "Non-PEO NEO"
       }
      }
     },
     "auth_ref": [
      "r915"
     ]
    },
    "ecd_NonRule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonRule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]",
        "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted"
       }
      }
     },
     "auth_ref": [
      "r934"
     ]
    },
    "ecd_NonRule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonRule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]",
        "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated"
       }
      }
     },
     "auth_ref": [
      "r934"
     ]
    },
    "icfi_NonemployeeDirectOrAwardsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "NonemployeeDirectOrAwardsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-Employee Director Awards",
        "label": "Nonemployee Direct Or Awards [Member]",
        "documentation": "Represents share-based awards exclusive to non-employee directors."
       }
      }
     },
     "auth_ref": []
    },
    "icfi_NumberOfOfficeFacilitiesCeasedUse": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "NumberOfOfficeFacilitiesCeasedUse",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of office facilities, ceased use.",
        "label": "Number of Office Facilities, Ceased Use",
        "terseLabel": "Number of office facilities, ceased use"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_NumberOfOpenStandbyLettersOfCredit": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "NumberOfOpenStandbyLettersOfCredit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of open standby letters of credit.",
        "label": "Number Of Open Standby Letters Of Credit",
        "terseLabel": "Number of open standby letters of credit"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NumberOfOperatingSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NumberOfOperatingSegments",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Number of Operating Segments",
        "terseLabel": "Number of operating segments",
        "verboseLabel": "Number of Operating Segments",
        "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues."
       }
      }
     },
     "auth_ref": [
      "r792",
      "r986"
     ]
    },
    "us-gaap_NumberOfReportableSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NumberOfReportableSegments",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Number of Reportable Segments",
        "terseLabel": "Number of reporting segments",
        "verboseLabel": "Number of Reportable Segments",
        "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements."
       }
      }
     },
     "auth_ref": [
      "r786",
      "r796",
      "r986"
     ]
    },
    "us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OciBeforeReclassificationsNetOfTaxAttributableToParent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails": {
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "OCI, before Reclassifications, Net of Tax, Attributable to Parent",
        "terseLabel": "Other comprehensive (loss) income before reclassifications",
        "documentation": "Amount after tax, before reclassification adjustments, of other comprehensive income (loss), attributable to parent."
       }
      }
     },
     "auth_ref": [
      "r21",
      "r24"
     ]
    },
    "icfi_OmnibusPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "OmnibusPlanMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Omnibus Plan.",
        "label": "Omnibus Plan [Member]",
        "terseLabel": "Omnibus Plan"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingExpenses",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Expenses",
        "totalLabel": "Total operating costs and 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://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Expenses [Abstract]",
        "terseLabel": "Operating costs and expenses:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Income (Loss)",
        "totalLabel": "Operating income",
        "terseLabel": "Operating loss",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r151",
      "r785",
      "r985",
      "r987",
      "r988",
      "r989",
      "r990"
     ]
    },
    "us-gaap_OperatingLeaseImpairmentLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseImpairmentLoss",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Impairment Loss",
        "terseLabel": "Impairment related to operating lease right-of-use asset",
        "documentation": "Amount of loss from impairment of right-of-use asset from operating lease."
       }
      }
     },
     "auth_ref": [
      "r1101"
     ]
    },
    "us-gaap_OperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiability",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails2": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails3": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability",
        "terseLabel": "Total lease liabilities",
        "totalLabel": "Total lease liabilities",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease."
       }
      }
     },
     "auth_ref": [
      "r591"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails3": {
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability, Current",
        "terseLabel": "Operating lease liabilities",
        "verboseLabel": "Lease liabilities - current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r591"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails3": {
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureLeasesSummaryOfFutureMinimumLeasePaymentsUnderNoncancellableOperatingAndFinanceLeasesDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability, Noncurrent",
        "terseLabel": "Operating lease liabilities - non-current",
        "verboseLabel": "Lease liabilities - non-current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r591"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Right-of-Use Asset",
        "terseLabel": "Operating lease - right-of-use assets",
        "documentation": "Amount of lessee's right to use underlying asset under operating lease."
       }
      }
     },
     "auth_ref": [
      "r590"
     ]
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentation1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basis of Presentation",
        "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]",
        "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure."
       }
      }
     },
     "auth_ref": [
      "r84",
      "r135",
      "r694",
      "r695"
     ]
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 12.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Accrued Liabilities, Current",
        "terseLabel": "Other accrued expenses and current liabilities",
        "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": [
      "r89"
     ]
    },
    "us-gaap_OtherAssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Assets [Abstract]",
        "terseLabel": "Other Assets:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Assets, Noncurrent",
        "terseLabel": "Other assets",
        "documentation": "Amount of noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r186"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED",
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent",
        "terseLabel": "Other comprehensive income (loss)",
        "totalLabel": "Total current period other comprehensive (loss) income",
        "verboseLabel": "Other comprehensive (loss) income, net of tax",
        "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r15",
      "r136",
      "r195",
      "r198",
      "r225"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]",
        "terseLabel": "Current period other comprehensive (loss) income:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossTaxPortionAttributableToParent1",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails": {
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Tax, Portion Attributable to Parent",
        "negatedLabel": "Effect of taxes",
        "totalLabel": "Other Comprehensive Income (Loss), Tax, Portion Attributable to Parent, Total",
        "documentation": "Amount of tax expense (benefit) allocated to other comprehensive income (loss) attributable to parent entity."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r15",
      "r136"
     ]
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherLiabilitiesNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Liabilities, Noncurrent",
        "terseLabel": "Other long-term liabilities",
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r94"
     ]
    },
    "us-gaap_OtherNoncashIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherNoncashIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 12.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other operating adjustments, net",
        "label": "Other Noncash Income (Expense)",
        "totalLabel": "Other Noncash Income (Expense), Total",
        "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other."
       }
      }
     },
     "auth_ref": [
      "r121"
     ]
    },
    "us-gaap_OtherNoncurrentAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherNoncurrentAssetsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Noncurrent Assets [Member]",
        "terseLabel": "Other Assets",
        "documentation": "Primary financial statement caption encompassing other noncurrent assets."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherNoncurrentLiabilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherNoncurrentLiabilitiesMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Noncurrent Liabilities [Member]",
        "terseLabel": "Other Long-Term Liabilities",
        "documentation": "Primary financial statement caption encompassing other noncurrent liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherNonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other (expense) income",
        "label": "Other Nonoperating Income (Expense)",
        "totalLabel": "Other Nonoperating Income (Expense), Total",
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other."
       }
      }
     },
     "auth_ref": [
      "r115"
     ]
    },
    "ecd_OtherPerfMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OtherPerfMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Performance Measure, Amount",
        "terseLabel": "Other Performance Measure, Amount"
       }
      }
     },
     "auth_ref": [
      "r907"
     ]
    },
    "ecd_OutstandingAggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OutstandingAggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Aggregate Erroneous Compensation Amount",
        "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r869",
      "r879",
      "r889",
      "r921"
     ]
    },
    "ecd_OutstandingRecoveryCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OutstandingRecoveryCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery Compensation Amount",
        "terseLabel": "Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r872",
      "r882",
      "r892",
      "r924"
     ]
    },
    "ecd_OutstandingRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OutstandingRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r872",
      "r882",
      "r892",
      "r924"
     ]
    },
    "ecd_PayVsPerformanceDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PayVsPerformanceDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Line Items]",
        "terseLabel": "Pay vs Performance Disclosure"
       }
      }
     },
     "auth_ref": [
      "r896"
     ]
    },
    "us-gaap_PayablesAndAccrualsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PayablesAndAccrualsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Payables and Accruals [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PaymentsForRepurchaseOfEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsForRepurchaseOfEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 13.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Net payments for stock issuances and share repurchases",
        "label": "Payments for Repurchase of Equity",
        "totalLabel": "Payments for Repurchase of Equity, Total",
        "documentation": "The cash outflow to reacquire common and preferred stock."
       }
      }
     },
     "auth_ref": [
      "r116",
      "r697"
     ]
    },
    "icfi_PaymentsForShareRepurchasesShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "PaymentsForShareRepurchasesShares",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Payments for share repurchases (in shares)",
        "label": "Payments For Share Repurchases Shares",
        "documentation": "Payments for share repurchases shares."
       }
      }
     },
     "auth_ref": []
    },
    "icfi_PaymentsForShareRepurchasesValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "PaymentsForShareRepurchasesValue",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Payments for share repurchases",
        "terseLabel": "Payments for share repurchases",
        "label": "Payments For Share Repurchases Value",
        "documentation": "Payments for share repurchases value."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PaymentsOfDividendsCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsOfDividendsCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 12.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payments of Ordinary Dividends, Common Stock",
        "negatedLabel": "Dividends paid",
        "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity."
       }
      }
     },
     "auth_ref": [
      "r116"
     ]
    },
    "us-gaap_PaymentsToAcquireBusinessesGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsToAcquireBusinessesGross",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payments to Acquire Businesses, Gross",
        "terseLabel": "Cash purchase price",
        "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r531"
     ]
    },
    "us-gaap_PaymentsToAcquireProductiveAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsToAcquireProductiveAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Payments for purchase of property and equipment and capitalized software",
        "label": "Payments to Acquire Productive Assets",
        "totalLabel": "Payments to Acquire Productive Assets, Total",
        "documentation": "The cash outflow for purchases of and capital improvements on property, plant and equipment (capital expenditures), software, and other intangible assets."
       }
      }
     },
     "auth_ref": [
      "r153",
      "r1072",
      "r1073",
      "r1074"
     ]
    },
    "ecd_PeerGroupIssuersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeerGroupIssuersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Peer Group Issuers, Footnote [Text Block]",
        "terseLabel": "Peer Group Issuers, Footnote"
       }
      }
     },
     "auth_ref": [
      "r906"
     ]
    },
    "ecd_PeerGroupTotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeerGroupTotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Peer Group Total Shareholder Return Amount",
        "terseLabel": "Peer Group Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r906"
     ]
    },
    "ecd_PeoActuallyPaidCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoActuallyPaidCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Actually Paid Compensation Amount",
        "terseLabel": "PEO Actually Paid Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r898"
     ]
    },
    "ecd_PeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO [Member]",
        "terseLabel": "PEO"
       }
      }
     },
     "auth_ref": [
      "r915"
     ]
    },
    "ecd_PeoName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Name",
        "terseLabel": "PEO Name"
       }
      }
     },
     "auth_ref": [
      "r908"
     ]
    },
    "ecd_PeoTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Total Compensation Amount",
        "terseLabel": "PEO Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r897"
     ]
    },
    "us-gaap_PerformanceSharesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PerformanceSharesMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Performance Shares [Member]",
        "terseLabel": "Performance Shares",
        "documentation": "Share-based payment arrangement awarded for meeting performance target."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PlanNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PlanNameAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Axis]",
        "terseLabel": "Plan Name",
        "documentation": "Information by plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r1040",
      "r1041",
      "r1042",
      "r1043",
      "r1044",
      "r1045",
      "r1046",
      "r1047",
      "r1048",
      "r1049",
      "r1050",
      "r1051",
      "r1052",
      "r1053",
      "r1054",
      "r1055",
      "r1056",
      "r1057",
      "r1058",
      "r1059",
      "r1060",
      "r1061",
      "r1062",
      "r1063",
      "r1064",
      "r1065"
     ]
    },
    "us-gaap_PlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PlanNameDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Domain]",
        "terseLabel": "Plan Name",
        "documentation": "Plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r1040",
      "r1041",
      "r1042",
      "r1043",
      "r1044",
      "r1045",
      "r1046",
      "r1047",
      "r1048",
      "r1049",
      "r1050",
      "r1051",
      "r1052",
      "r1053",
      "r1054",
      "r1055",
      "r1056",
      "r1057",
      "r1058",
      "r1059",
      "r1060",
      "r1061",
      "r1062",
      "r1063",
      "r1064",
      "r1065"
     ]
    },
    "ecd_PnsnAdjsPrrSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PnsnAdjsPrrSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Adjustments Prior Service Cost [Member]",
        "terseLabel": "Pension Adjustments Prior Service Cost"
       }
      }
     },
     "auth_ref": [
      "r899"
     ]
    },
    "ecd_PnsnAdjsSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PnsnAdjsSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Adjustments Service Cost [Member]",
        "terseLabel": "Pension Adjustments Service Cost"
       }
      }
     },
     "auth_ref": [
      "r943"
     ]
    },
    "ecd_PnsnBnftsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PnsnBnftsAdjFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Benefits Adjustments, Footnote [Text Block]",
        "terseLabel": "Pension Benefits Adjustments, Footnote"
       }
      }
     },
     "auth_ref": [
      "r898"
     ]
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "terseLabel": "Preferred stock, par value (in dollars per share)",
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer."
       }
      }
     },
     "auth_ref": [
      "r97",
      "r423"
     ]
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesAuthorized",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Shares Authorized",
        "terseLabel": "Preferred stock, shares authorized (in shares)",
        "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": [
      "r97",
      "r714"
     ]
    },
    "us-gaap_PreferredStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesIssued",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Shares Issued",
        "terseLabel": "Preferred stock, shares issued (in shares)",
        "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": [
      "r97",
      "r423"
     ]
    },
    "us-gaap_PreferredStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Value, Issued",
        "terseLabel": "Preferred stock, par value $.001; 5,000,000 shares authorized; 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": [
      "r97",
      "r649",
      "r838"
     ]
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid Expense and Other Assets, Current",
        "terseLabel": "Prepaid expenses and other assets",
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r964"
     ]
    },
    "us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpensesAndOtherCurrentAssetsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid Expenses and Other Current Assets [Member]",
        "terseLabel": "Prepaid Expenses and Other Current Assets",
        "documentation": "Primary financial statement caption encompassing prepaid expenses and other current assets."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PriorPeriodReclassificationAdjustmentDescription": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PriorPeriodReclassificationAdjustmentDescription",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reclassification, Comparability Adjustment [Policy Text Block]",
        "terseLabel": "Reclassification",
        "documentation": "Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error."
       }
      }
     },
     "auth_ref": [
      "r961"
     ]
    },
    "us-gaap_ProceedsFromAccountsReceivableSecuritization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromAccountsReceivableSecuritization",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom2",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Collections from customers during the period",
        "negatedLabel": "Collections from customers during the period",
        "label": "Proceeds from Accounts Receivable Securitization",
        "documentation": "Proceeds from securitizations of receivables treated as collateralized borrowings, which are classified as financing transactions."
       }
      }
     },
     "auth_ref": [
      "r29"
     ]
    },
    "us-gaap_ProceedsFromBankDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromBankDebt",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Bank Debt",
        "terseLabel": "Advances from working capital facilities",
        "documentation": "The cash inflow from bank borrowing during the year."
       }
      }
     },
     "auth_ref": [
      "r29"
     ]
    },
    "us-gaap_ProceedsFromDivestitureOfBusinesses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromDivestitureOfBusinesses",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Divestiture of Businesses",
        "terseLabel": "Proceeds from divestiture of a business",
        "documentation": "The cash inflow associated with the amount received from the sale of a portion of the company's business, for example a segment, division, branch or other business, during the period."
       }
      }
     },
     "auth_ref": [
      "r27"
     ]
    },
    "us-gaap_ProceedsFromOtherShortTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromOtherShortTermDebt",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Other Short-Term Debt",
        "terseLabel": "Proceeds from other short-term borrowings",
        "documentation": "Amount of cash inflow from short-term debt classified as other."
       }
      }
     },
     "auth_ref": [
      "r29"
     ]
    },
    "us-gaap_ProceedsFromPaymentsForOtherFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromPaymentsForOtherFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other financing, net",
        "label": "Proceeds from (Payments for) Other Financing Activities",
        "documentation": "Amount of cash inflow (outflow) from financing activities classified as other."
       }
      }
     },
     "auth_ref": [
      "r947",
      "r969"
     ]
    },
    "icfi_ProceedsFromRestrictedContractFunds": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "ProceedsFromRestrictedContractFunds",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds from restricted contract funds.",
        "label": "Proceeds From Restricted Contract Funds",
        "terseLabel": "Receipt of restricted contract funds"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromSaleAndCollectionOfReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromSaleAndCollectionOfReceivables",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Proceeds from Sale and Collection of Receivables, Total",
        "label": "Proceeds from Sale and Collection of Receivables",
        "terseLabel": "Sale of billed contract receivables amount",
        "documentation": "The cash inflow associated with the proceeds from sale and collection of receivables during the period."
       }
      }
     },
     "auth_ref": [
      "r26"
     ]
    },
    "icfi_ProceedsFromSaleOfBilledContractReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "ProceedsFromSaleOfBilledContractReceivables",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds from sale of billed contract receivables.",
        "label": "Proceeds From Sale Of Billed Contract Receivables",
        "terseLabel": "Proceeds from sale of billed contract receivables"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_ProceedsFromSaleOfBilledReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "ProceedsFromSaleOfBilledReceivables",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfBilledContractReceivablesSoldToMufIncludingReceivablesSoldToMufcAndCollectedFrom3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from sale of billed receivables",
        "label": "Proceeds From Sale Of Billed Receivables",
        "documentation": "Proceeds from sale of billed receivables."
       }
      }
     },
     "auth_ref": []
    },
    "icfi_ProceedsFromSaleOfBilledReceivablesNotYetRemitted": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "ProceedsFromSaleOfBilledReceivablesNotYetRemitted",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Procceds from sale of billed receivables but not yet remitted to MUFG",
        "label": "Proceeds From Sale of Billed Receivables Not Yet Remitted",
        "documentation": "Proceeds from sale of billed receivables not yet remitted."
       }
      }
     },
     "auth_ref": []
    },
    "srt_ProductOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ProductOrServiceAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]",
        "terseLabel": "Product and Service",
        "documentation": "Information by product and service, or group of similar products and similar services."
       }
      }
     },
     "auth_ref": [
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r279",
      "r635",
      "r675",
      "r676",
      "r677",
      "r678",
      "r679",
      "r680",
      "r681",
      "r779",
      "r809",
      "r840",
      "r841",
      "r842",
      "r844",
      "r845",
      "r960",
      "r1029",
      "r1030",
      "r1039",
      "r1116",
      "r1120",
      "r1121",
      "r1122",
      "r1123",
      "r1124",
      "r1125",
      "r1126",
      "r1127",
      "r1128",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147"
     ]
    },
    "srt_ProductsAndServicesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ProductsAndServicesDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]",
        "terseLabel": "Product and Service",
        "documentation": "Product or service, or a group of similar products or similar services."
       }
      }
     },
     "auth_ref": [
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r279",
      "r635",
      "r675",
      "r676",
      "r677",
      "r678",
      "r679",
      "r680",
      "r681",
      "r779",
      "r809",
      "r840",
      "r841",
      "r842",
      "r844",
      "r845",
      "r960",
      "r1029",
      "r1030",
      "r1039",
      "r1116",
      "r1120",
      "r1121",
      "r1122",
      "r1123",
      "r1124",
      "r1125",
      "r1126",
      "r1127",
      "r1128",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147"
     ]
    },
    "us-gaap_ProfitLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProfitLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest",
        "terseLabel": "Net income",
        "totalLabel": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest, Total",
        "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r181",
      "r194",
      "r197",
      "r206",
      "r213",
      "r219",
      "r225",
      "r228",
      "r229",
      "r316",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r528",
      "r533",
      "r534",
      "r537",
      "r538",
      "r555",
      "r576",
      "r644",
      "r656",
      "r700",
      "r734",
      "r750",
      "r751",
      "r824",
      "r825",
      "r857",
      "r967",
      "r1034"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment, Net",
        "terseLabel": "Property and Equipment, net",
        "totalLabel": "Property, Plant and Equipment, Net, Total",
        "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": [
      "r12",
      "r596",
      "r645",
      "r654",
      "r838"
     ]
    },
    "us-gaap_ProvisionForOtherCreditLosses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProvisionForOtherCreditLosses",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Provision for Other Credit Losses",
        "terseLabel": "Provision for credit losses",
        "documentation": "Amount of expense related to credit loss from transactions other than loan and lease transactions."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r146"
     ]
    },
    "ecd_PvpTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PvpTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Table]",
        "terseLabel": "Pay vs Performance Disclosure"
       }
      }
     },
     "auth_ref": [
      "r896"
     ]
    },
    "ecd_PvpTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PvpTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance [Table Text Block]",
        "terseLabel": "Pay vs Performance Disclosure, Table"
       }
      }
     },
     "auth_ref": [
      "r896"
     ]
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Statistical Measurement",
        "documentation": "Information by statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median."
       }
      }
     },
     "auth_ref": [
      "r164",
      "r165",
      "r166",
      "r167",
      "r168",
      "r177",
      "r178",
      "r376",
      "r377",
      "r378",
      "r379",
      "r453",
      "r460",
      "r490",
      "r491",
      "r492",
      "r500",
      "r561",
      "r608",
      "r617",
      "r633",
      "r682",
      "r684",
      "r692",
      "r704",
      "r705",
      "r757",
      "r758",
      "r759",
      "r760",
      "r769",
      "r774",
      "r775",
      "r798",
      "r808",
      "r821",
      "r830",
      "r831",
      "r835",
      "r836",
      "r841",
      "r848",
      "r1025",
      "r1036",
      "r1083",
      "r1109",
      "r1110",
      "r1111",
      "r1112",
      "r1113"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "terseLabel": "Statistical Measurement",
        "documentation": "Statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median."
       }
      }
     },
     "auth_ref": [
      "r164",
      "r165",
      "r166",
      "r167",
      "r168",
      "r177",
      "r178",
      "r376",
      "r377",
      "r378",
      "r379",
      "r453",
      "r460",
      "r490",
      "r491",
      "r492",
      "r500",
      "r561",
      "r608",
      "r617",
      "r633",
      "r682",
      "r684",
      "r692",
      "r704",
      "r705",
      "r757",
      "r758",
      "r759",
      "r760",
      "r769",
      "r774",
      "r775",
      "r798",
      "r808",
      "r821",
      "r830",
      "r831",
      "r835",
      "r836",
      "r841",
      "r848",
      "r1025",
      "r1036",
      "r1083",
      "r1109",
      "r1110",
      "r1111",
      "r1112",
      "r1113"
     ]
    },
    "us-gaap_ReceivablesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ReceivablesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Receivables [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails": {
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reclassification from AOCI, Current Period, Net of Tax, Attributable to Parent",
        "negatedLabel": "Amounts reclassified from accumulated other comprehensive (loss) income",
        "terseLabel": "Amounts reclassified from accumulated other comprehensive (loss) income",
        "documentation": "Amount after tax of reclassification adjustments of other comprehensive income (loss) attributable to parent."
       }
      }
     },
     "auth_ref": [
      "r21",
      "r24"
     ]
    },
    "us-gaap_ReconciliationFromSegmentTotalsToConsolidatedAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ReconciliationFromSegmentTotalsToConsolidatedAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reconciliation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reconciliation of Revenue from Segments to Consolidated [Table Text Block]",
        "terseLabel": "Schedule of Segment Revenue, Significant Segment Expenses, and Segment Profit",
        "documentation": "Tabular disclosure of all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues."
       }
      }
     },
     "auth_ref": [
      "r42",
      "r43"
     ]
    },
    "ecd_RecoveryOfErrCompDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RecoveryOfErrCompDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]",
        "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure"
       }
      }
     },
     "auth_ref": [
      "r864",
      "r874",
      "r884",
      "r916"
     ]
    },
    "us-gaap_RepaymentsOfAccountsReceivableSecuritization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RepaymentsOfAccountsReceivableSecuritization",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Remittances to MUFG during the period",
        "label": "Repayments of Accounts Receivable Securitization",
        "documentation": "Repayments of securitizations of receivables treated as collateralized borrowings, which are classified as financing transactions."
       }
      }
     },
     "auth_ref": [
      "r117"
     ]
    },
    "us-gaap_RepaymentsOfLongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RepaymentsOfLongTermDebt",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Repayments of Long-Term Debt",
        "negatedLabel": "Payments on working capital facilities",
        "totalLabel": "Repayments of Long-Term Debt, Total",
        "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r697"
     ]
    },
    "us-gaap_RepaymentsOfOtherShortTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RepaymentsOfOtherShortTermDebt",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Repayments of Other Short-Term Debt",
        "negatedLabel": "Repayments of other short-term borrowings",
        "documentation": "Amount of cash outflow for the payment of debt classified as other, maturing within one year or the operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r117"
     ]
    },
    "icfi_RepaymentsOfRestrictedContractFunds": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "RepaymentsOfRestrictedContractFunds",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Repayments of restricted contract funds.",
        "label": "Repayments Of Restricted Contract Funds",
        "negatedLabel": "Payment of restricted contract funds"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_RestatementDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RestatementDateAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date [Axis]",
        "terseLabel": "Restatement Determination Date:"
       }
      }
     },
     "auth_ref": [
      "r865",
      "r875",
      "r885",
      "r917"
     ]
    },
    "ecd_RestatementDeterminationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RestatementDeterminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date",
        "terseLabel": "Restatement Determination Date"
       }
      }
     },
     "auth_ref": [
      "r866",
      "r876",
      "r886",
      "r918"
     ]
    },
    "ecd_RestatementDoesNotRequireRecoveryTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RestatementDoesNotRequireRecoveryTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Does Not Require Recovery [Text Block]",
        "terseLabel": "Restatement does not require Recovery"
       }
      }
     },
     "auth_ref": [
      "r873",
      "r883",
      "r893",
      "r925"
     ]
    },
    "us-gaap_RestrictedCashAndCashEquivalentsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestrictedCashAndCashEquivalentsCurrentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Restricted Cash and Cash Equivalents, Current [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RestrictedCashCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestrictedCashCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashReconciliationOfCashAndCashEquivalentsAndRestrictedCashToTotalOfCashCashEquivalentsAndRestrictedCashDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restricted Cash, Current",
        "terseLabel": "Restricted cash",
        "documentation": "Amount of cash restricted as to withdrawal or usage, classified as current. 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."
       }
      }
     },
     "auth_ref": [
      "r962",
      "r973"
     ]
    },
    "icfi_RestrictedContractFunds": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "RestrictedContractFunds",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesScheduleOfAccruedExpensesAndOtherCurrentLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restricted contract funds.",
        "label": "Restricted Contract Funds",
        "terseLabel": "Restricted contract funds"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestrictedStockUnitsRSUMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restricted Stock Units (RSUs) [Member]",
        "terseLabel": "Restricted Stock Units (RSUs)",
        "verboseLabel": "Restricted Stock Awards",
        "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestructuringAndRelatedActivitiesDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignment"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring and Related Activities Disclosure [Text Block]",
        "terseLabel": "Organizational Realignment",
        "documentation": "The entire disclosure for restructuring and related activities. Description of restructuring activities such as exit and disposal activities, include facts and circumstances leading to the plan, the expected plan completion date, the major types of costs associated with the plan activities, total expected costs, the accrual balance at the end of the period, and the periods over which the remaining accrual will be settled."
       }
      }
     },
     "auth_ref": [
      "r362",
      "r363",
      "r365",
      "r368",
      "r372"
     ]
    },
    "icfi_RestructuringAndRelatedCostLineItemsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "RestructuringAndRelatedCostLineItemsLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring And Related Cost LineItems [Line items]",
        "documentation": "Restructuring And Related Cost LineItems [Line items]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RestructuringCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestructuringCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employee related restructuring cost",
        "totalLabel": "Restructuring Costs, Total",
        "label": "Restructuring costs",
        "documentation": "Amount, after cash payment, of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation."
       }
      }
     },
     "auth_ref": [
      "r11"
     ]
    },
    "us-gaap_RestructuringCostsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestructuringCostsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring Costs [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained Earnings (Accumulated Deficit)",
        "terseLabel": "Retained earnings",
        "totalLabel": "Retained Earnings (Accumulated Deficit), Total",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r101",
      "r129",
      "r652",
      "r689",
      "r691",
      "r698",
      "r715",
      "r838"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained Earnings [Member]",
        "terseLabel": "Retained Earnings",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r179",
      "r216",
      "r217",
      "r218",
      "r220",
      "r225",
      "r227",
      "r229",
      "r317",
      "r318",
      "r353",
      "r517",
      "r518",
      "r525",
      "r526",
      "r527",
      "r529",
      "r532",
      "r533",
      "r545",
      "r547",
      "r548",
      "r550",
      "r553",
      "r587",
      "r589",
      "r686",
      "r688",
      "r701",
      "r1151"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer, Excluding Assessed Tax",
        "terseLabel": "Revenue",
        "verboseLabel": "Revenue from clients",
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise."
       }
      }
     },
     "auth_ref": [
      "r149",
      "r150",
      "r246",
      "r254",
      "r255",
      "r270",
      "r276",
      "r279",
      "r281",
      "r282",
      "r448",
      "r449",
      "r635"
     ]
    },
    "icfi_RevenueFromContractWithCustomerLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "RevenueFromContractWithCustomerLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from contract with customer.",
        "label": "Revenue From Contract With Customer [Line Items]",
        "terseLabel": "Revenue From Contract With Customer [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer Benchmark [Member]",
        "terseLabel": "Revenue from Contract with Customer",
        "documentation": "Revenue from satisfaction of performance obligation by transferring promised product and service to customer, when it serves as benchmark in concentration of risk calculation."
       }
      }
     },
     "auth_ref": [
      "r282",
      "r949"
     ]
    },
    "icfi_RevenueFromContractWithCustomerTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "RevenueFromContractWithCustomerTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from contract with customer.",
        "label": "Revenue From Contract With Customer [Table]",
        "terseLabel": "Revenue From Contract With Customer [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognition"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Text Block]",
        "terseLabel": "Revenue Recognition",
        "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": [
      "r163",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r446",
      "r447",
      "r452"
     ]
    },
    "us-gaap_RevenueRemainingPerformanceObligation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueRemainingPerformanceObligation",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue, Remaining Performance Obligation, Amount",
        "terseLabel": "Unfulfilled performance obligation",
        "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue."
       }
      }
     },
     "auth_ref": [
      "r159"
     ]
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period",
        "terseLabel": "Expected period to satisfy performance obligations",
        "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r160"
     ]
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date",
        "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r160"
     ]
    },
    "us-gaap_RevenueRemainingPerformanceObligationPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueRemainingPerformanceObligationPercentage",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue, remaining performance obligation, percentage",
        "label": "Revenue, Remaining Performance Obligation, Percentage",
        "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue."
       }
      }
     },
     "auth_ref": [
      "r948"
     ]
    },
    "ecd_Rule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "Rule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 10b5-1 Arrangement Adopted [Flag]",
        "terseLabel": "Rule 10b5-1 Arrangement Adopted"
       }
      }
     },
     "auth_ref": [
      "r934"
     ]
    },
    "ecd_Rule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "Rule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 10b5-1 Arrangement Terminated [Flag]",
        "terseLabel": "Rule 10b5-1 Arrangement Terminated"
       }
      }
     },
     "auth_ref": [
      "r934"
     ]
    },
    "icfi_SaleOfBilledReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SaleOfBilledReceivables",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance",
        "label": "Sale Of Billed Receivables",
        "documentation": "Sale of billed receivables."
       }
      }
     },
     "auth_ref": []
    },
    "icfi_SaleOfReceivablesLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SaleOfReceivablesLiabilities",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud1",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Sale of billed receivables",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance",
        "label": "Sale of Receivables Liabilities",
        "documentation": "Sale of receivables liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScenarioPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScenarioPlanMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario, Plan [Member]",
        "terseLabel": "Scenario, Plan",
        "documentation": "The scenario under which facts represent plans as distinct from actual."
       }
      }
     },
     "auth_ref": []
    },
    "srt_ScenarioUnspecifiedDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ScenarioUnspecifiedDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Domain]",
        "documentation": "Scenario reported, distinguishing information from actual fact. Includes, but is not limited to, pro forma and forecast. Excludes actual facts."
       }
      }
     },
     "auth_ref": [
      "r176",
      "r230",
      "r461",
      "r945",
      "r982"
     ]
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetSummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgInclud2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts and Financing Receivables [Table]",
        "documentation": "Disclosure of information about accounts and financing receivables. Includes, but is not limited to, amount of receivable and allowance for credit loss."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r105",
      "r284",
      "r993"
     ]
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]",
        "terseLabel": "Summary of Contract Receivables, Net",
        "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r105"
     ]
    },
    "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Accrued Liabilities [Table Text Block]",
        "terseLabel": "Schedule of Accrued Expenses and Other Current Liabilities",
        "documentation": "Tabular disclosure of the components of accrued liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]",
        "terseLabel": "Components of Accumulated Other Comprehensive Loss",
        "documentation": "Tabular disclosure of the components of accumulated other comprehensive income (loss)."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r1097",
      "r1098"
     ]
    },
    "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table]",
        "documentation": "Disclosure of information about acquired finite-lived intangible asset by major class."
       }
      }
     },
     "auth_ref": [
      "r344",
      "r345",
      "r346",
      "r348",
      "r777"
     ]
    },
    "icfi_ScheduleOfAcquisitionAndDivestitureTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "ScheduleOfAcquisitionAndDivestitureTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of acquisition and divestiture.",
        "label": "Schedule Of Acquisition And Divestiture [Table]",
        "verboseLabel": "Schedule of Acquisition and Divestiture [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]",
        "terseLabel": "Schedule of Weighted Average Shares Excluded from Calculation of EPS",
        "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": [
      "r33"
     ]
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Business Acquisitions, by Acquisition [Table]",
        "documentation": "Disclosure of information about business combination. Includes, but is not limited to, recognized asset and liability."
       }
      }
     },
     "auth_ref": [
      "r58",
      "r60",
      "r530"
     ]
    },
    "us-gaap_ScheduleOfDebtInstrumentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfDebtInstrumentsTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Debt",
        "label": "Schedule of Long-Term Debt Instruments [Table Text Block]",
        "documentation": "Tabular disclosure of long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r48",
      "r49",
      "r83",
      "r127",
      "r128",
      "r804",
      "r806",
      "r978",
      "r1099"
     ]
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "terseLabel": "Schedule of Earnings Per Share Including Dilutive Effect of Stock Awards",
        "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": [
      "r984"
     ]
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureIncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]",
        "terseLabel": "Effective Income Tax Rate Reconciliation",
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r507",
      "r823",
      "r1067"
     ]
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]",
        "terseLabel": "Schedule of Stock-Based Compensation Expense",
        "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement."
       }
      }
     },
     "auth_ref": [
      "r55"
     ]
    },
    "us-gaap_ScheduleOfFinancingReceivablesPastDueTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfFinancingReceivablesPastDueTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureContractReceivablesNetAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financing Receivable, Past Due [Table]",
        "documentation": "Disclosure of information about aging analysis for financing receivable."
       }
      }
     },
     "auth_ref": [
      "r799",
      "r999"
     ]
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Estimated Useful Lives of Acquired Intangible Assets",
        "label": "Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]",
        "documentation": "Tabular disclosure of finite-lived intangible assets acquired as part of a business combination or through an asset purchase, by major class and in total, including the value of the asset acquired, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period."
       }
      }
     },
     "auth_ref": [
      "r44"
     ]
    },
    "us-gaap_ScheduleOfGoodwillTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfGoodwillTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill [Table]",
        "terseLabel": "Schedule Of Goodwill [Table]",
        "documentation": "Disclosure of information about goodwill, including, but not limited to, change from acquisition, sale, impairment, and other reason."
       }
      }
     },
     "auth_ref": [
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r342",
      "r801"
     ]
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfGoodwillTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Goodwill [Table Text Block]",
        "terseLabel": "Schedule of Changes in Carrying Amount of Goodwill",
        "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule."
       }
      }
     },
     "auth_ref": [
      "r801",
      "r1000",
      "r1001",
      "r1002",
      "r1003",
      "r1004",
      "r1005",
      "r1006",
      "r1007",
      "r1008",
      "r1009",
      "r1010"
     ]
    },
    "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Maturities of Long-Term Debt [Table Text Block]",
        "terseLabel": "Schedule of Future Scheduled Repayments of Debt Principal",
        "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfNonvestedShareActivityTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Awards Granted",
        "label": "Schedule of Nonvested Share Activity [Table Text Block]",
        "documentation": "Tabular disclosure of the changes in outstanding nonvested shares."
       }
      }
     },
     "auth_ref": [
      "r131"
     ]
    },
    "icfi_ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "ScheduleOfOtherInformationRelatedToOperatingAndFinanceLeasesTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureLeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of other information related to operating and finance leases.",
        "label": "Schedule of Other Information Related to Operating and Finance Leases [Table Text Block]",
        "terseLabel": "Summary of Other Information Related to Operating and Finance Leases"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]",
        "terseLabel": "Summary of Preliminary Purchase Price Allocation",
        "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree."
       }
      }
     },
     "auth_ref": [
      "r133"
     ]
    },
    "us-gaap_ScheduleOfRestrictedCashAndCashEquivalentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfRestrictedCashAndCashEquivalentsTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRestrictedCashTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restrictions on Cash and Cash Equivalents [Table Text Block]",
        "terseLabel": "Reconciliation of Cash and Cash Equivalents, and Restricted Cash",
        "documentation": "Tabular disclosure of cash and cash equivalents restricted as to withdrawal or usage."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r139",
      "r1115"
     ]
    },
    "us-gaap_ScheduleOfRestructuringAndRelatedCostsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfRestructuringAndRelatedCostsTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring Cost [Table]",
        "documentation": "Disclosure of information about restructuring cost. Includes, but is not limited to, expected cost, cost incurred, statement of income caption that includes restructuring cost recognized, and amount of restructuring reserve."
       }
      }
     },
     "auth_ref": [
      "r364",
      "r365",
      "r366",
      "r367",
      "r369",
      "r370",
      "r371"
     ]
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Segment Reporting Information, by Segment [Table]",
        "documentation": "Disclosure of information about profit (loss) and total assets by reportable segment."
       }
      }
     },
     "auth_ref": [
      "r39",
      "r40",
      "r41"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]",
        "terseLabel": "Schedule Of Share Based Compensation Arrangements By Share Based Payment Award [Table]",
        "documentation": "Disclosure of information about share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r463",
      "r465",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493"
     ]
    },
    "us-gaap_ScheduleOfTreasuryStockByClassTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfTreasuryStockByClassTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Class of Treasury Stock [Table Text Block]",
        "terseLabel": "Summary of Repurchases of Shares",
        "documentation": "Tabular disclosure of treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock."
       }
      }
     },
     "auth_ref": [
      "r50",
      "r51",
      "r52",
      "r53"
     ]
    },
    "icfi_SecuredOvernightFinancingRateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SecuredOvernightFinancingRateMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Secured Overnight Financing Rate [Member]",
        "label": "Secured Overnight Financing Rate [Member]",
        "terseLabel": "Secured Overnight Financing Rate"
       }
      }
     },
     "auth_ref": []
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "Security12bTitle",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "terseLabel": "Title of each class",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r859"
     ]
    },
    "icfi_SecurityAndOtherCivilianAndCommercialMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SecurityAndOtherCivilianAndCommercialMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Security and other civilian &amp; commercial.",
        "label": "Security And Other Civilian And Commercial [Member]",
        "terseLabel": "Security and Other Civilian &amp; Commercial"
       }
      }
     },
     "auth_ref": []
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "terseLabel": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r861"
     ]
    },
    "icfi_SegmentDepreciationAndAmortizationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SegmentDepreciationAndAmortizationMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Depreciation and Amortization [Member]",
        "documentation": "Segment depreciation and amortization.",
        "terseLabel": "Depreciation and Amortization"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segments [Domain]",
        "terseLabel": "Segments",
        "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": [
      "r149",
      "r150",
      "r151",
      "r152",
      "r246",
      "r249",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r266",
      "r267",
      "r268",
      "r270",
      "r271",
      "r272",
      "r273",
      "r274",
      "r276",
      "r277",
      "r278",
      "r282",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r352",
      "r367",
      "r371",
      "r664",
      "r665",
      "r666",
      "r667",
      "r668",
      "r669",
      "r670",
      "r671",
      "r672",
      "r673",
      "r674",
      "r787",
      "r791",
      "r792",
      "r801",
      "r843",
      "r1116",
      "r1120",
      "r1121",
      "r1122",
      "r1123",
      "r1124",
      "r1125",
      "r1126",
      "r1127",
      "r1128",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147"
     ]
    },
    "us-gaap_SegmentReportingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting, CODM, Individual Title and Position or Group Name [Extensible Enumeration]",
        "documentation": "Indicates title and position of individual or name of group identified as chief operating decision maker (CODM) for segment reporting."
       }
      }
     },
     "auth_ref": [
      "r252",
      "r790",
      "r797"
     ]
    },
    "us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingCodmProfitLossMeasureHowUsedDescription",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting, CODM, Profit (Loss) Measure, How Used, Description",
        "documentation": "Description of how chief operating decision maker (CODM) uses reported segment profit (loss) measure to assess performance and allocate resource."
       }
      }
     },
     "auth_ref": [
      "r269",
      "r787",
      "r794"
     ]
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting Disclosure [Text Block]",
        "terseLabel": "Segment Information",
        "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": [
      "r152",
      "r246",
      "r248",
      "r249",
      "r250",
      "r251",
      "r253",
      "r265",
      "r267",
      "r268",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r282",
      "r786",
      "r788",
      "r789",
      "r791",
      "r793",
      "r795",
      "r796"
     ]
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingInformationLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting Information [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": []
    },
    "us-gaap_SegmentReportingOtherItemAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingOtherItemAmount",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting, Other Segment Item, Amount",
        "terseLabel": "Other segment expense (income)",
        "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": [
      "r246",
      "r267",
      "r268",
      "r276",
      "r791"
     ]
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SellingGeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling, General and Administrative Expense",
        "terseLabel": "Indirect and selling expenses",
        "totalLabel": "Selling, General and Administrative Expense, Total",
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc."
       }
      }
     },
     "auth_ref": [
      "r114"
     ]
    },
    "icfi_SemanticBitsLLCMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SemanticBitsLLCMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureGoodwillScheduleOfChangesInCarryingAmountOfGoodwillDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "SemanticBits",
        "documentation": "SemanticBits, LLC .",
        "label": "Semantic Bits L L C [Member]",
        "verboseLabel": "SemanticBits LLC"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_SeveranceChargeExpectedToBePaid": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SeveranceChargeExpectedToBePaid",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Severance charge expected to be paid",
        "documentation": "Severance charge expected to be paid."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SeveranceCosts1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SeveranceCosts1",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Severance Costs",
        "terseLabel": "Remaining of severance cost",
        "documentation": "Amount of expenses for special or contractual termination benefits provided to current employees involuntarily terminated under a benefit arrangement associated exit or disposal activities pursuant to an authorized plan. Excludes expenses related to one-time termination benefits, a discontinued operation or an asset retirement obligation."
       }
      }
     },
     "auth_ref": [
      "r11"
     ]
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "terseLabel": "Non-cash equity compensation",
        "totalLabel": "Share-Based Payment Arrangement, Noncash Expense, Total",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "us-gaap_ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationAllocationAndClassificationInFinancialStatementsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Recognized Amount [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period",
        "terseLabel": "Share-based compensation arrangement by share-based payment award, award vesting period",
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition."
       }
      }
     },
     "auth_ref": [
      "r822"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "terseLabel": "Awards Granted",
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)."
       }
      }
     },
     "auth_ref": [
      "r482"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Average Grant Date Fair Value",
        "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)."
       }
      }
     },
     "auth_ref": [
      "r482"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]",
        "terseLabel": "Share Based Compensation Arrangement By Share Based Payment Award [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": [
      "r463",
      "r465",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant",
        "terseLabel": "Share-based compensation arrangement by share-based payment award, number of shares available for grant",
        "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable."
       }
      }
     },
     "auth_ref": [
      "r54"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross",
        "terseLabel": "Share-based compensation arrangement by share-based payment award, number of shares grants",
        "documentation": "Gross number of share options (or share units) granted during the period."
       }
      }
     },
     "auth_ref": [
      "r475"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockbasedCompensationScheduleOfAwardsGrantedDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Award Types",
        "terseLabel": "All Award Types",
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493"
     ]
    },
    "srt_ShareRepurchaseProgramAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ShareRepurchaseProgramAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Repurchase Program [Axis]",
        "terseLabel": "Share Repurchase Program",
        "documentation": "Information by share repurchase program."
       }
      }
     },
     "auth_ref": [
      "r1037"
     ]
    },
    "srt_ShareRepurchaseProgramDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ShareRepurchaseProgramDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Repurchase Program [Domain]",
        "terseLabel": "Share Repurchase Program",
        "documentation": "Name of share repurchase program."
       }
      }
     },
     "auth_ref": [
      "r1037"
     ]
    },
    "us-gaap_SharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharesIssued",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares, Issued",
        "periodEndLabel": "Balance (in shares)",
        "periodStartLabel": "Balance (in 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": [
      "r16"
     ]
    },
    "icfi_SignificantSegmentExpensesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SignificantSegmentExpensesAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant Segment Expenses [Abstract]",
        "documentation": "Significant segment expenses.",
        "terseLabel": "Significant segment expenses:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StandbyLettersOfCreditMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StandbyLettersOfCreditMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Standby Letters of Credit [Member]",
        "terseLabel": "Standby Letters of Credit",
        "documentation": "An irrevocable undertaking (typically by a financial institution) to guarantee payment of a specified financial obligation."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r1031",
      "r1148",
      "r1149"
     ]
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementBusinessSegmentsAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segments [Axis]",
        "terseLabel": "Segments",
        "documentation": "Information by business segments."
       }
      }
     },
     "auth_ref": [
      "r149",
      "r150",
      "r151",
      "r152",
      "r180",
      "r246",
      "r249",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r266",
      "r267",
      "r268",
      "r270",
      "r271",
      "r272",
      "r273",
      "r274",
      "r276",
      "r277",
      "r278",
      "r282",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r352",
      "r355",
      "r367",
      "r371",
      "r664",
      "r665",
      "r666",
      "r667",
      "r668",
      "r669",
      "r670",
      "r671",
      "r672",
      "r673",
      "r674",
      "r787",
      "r791",
      "r792",
      "r801",
      "r843",
      "r1116",
      "r1120",
      "r1121",
      "r1122",
      "r1123",
      "r1124",
      "r1125",
      "r1126",
      "r1127",
      "r1128",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossParentheticalDetails",
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Components",
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r98",
      "r102",
      "r103",
      "r179",
      "r199",
      "r200",
      "r201",
      "r216",
      "r217",
      "r218",
      "r220",
      "r225",
      "r227",
      "r229",
      "r247",
      "r317",
      "r318",
      "r353",
      "r436",
      "r517",
      "r518",
      "r525",
      "r526",
      "r527",
      "r529",
      "r532",
      "r533",
      "r545",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r553",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r587",
      "r589",
      "r598",
      "r658",
      "r686",
      "r687",
      "r688",
      "r701",
      "r752"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Line Items]",
        "terseLabel": "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": [
      "r216",
      "r217",
      "r218",
      "r247",
      "r589",
      "r635",
      "r696",
      "r702",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710",
      "r711",
      "r714",
      "r717",
      "r718",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r727",
      "r728",
      "r729",
      "r730",
      "r731",
      "r733",
      "r735",
      "r736",
      "r738",
      "r739",
      "r740",
      "r741",
      "r742",
      "r743",
      "r744",
      "r745",
      "r746",
      "r747",
      "r748",
      "r749",
      "r752",
      "r849"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_StatementScenarioAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "StatementScenarioAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureOrganizationalRealignmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]",
        "documentation": "Information by scenario reported, distinguishing information from actual fact. Includes, but is not limited to, pro forma and forecast. Excludes actual facts."
       }
      }
     },
     "auth_ref": [
      "r176",
      "r230",
      "r461",
      "r945",
      "r946",
      "r982"
     ]
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Table]",
        "terseLabel": "Statement [Table]",
        "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity."
       }
      }
     },
     "auth_ref": [
      "r216",
      "r217",
      "r218",
      "r247",
      "r283",
      "r589",
      "r635",
      "r696",
      "r702",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710",
      "r711",
      "r714",
      "r717",
      "r718",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r727",
      "r728",
      "r729",
      "r730",
      "r731",
      "r733",
      "r735",
      "r736",
      "r738",
      "r739",
      "r740",
      "r741",
      "r742",
      "r743",
      "r744",
      "r745",
      "r746",
      "r747",
      "r748",
      "r749",
      "r752",
      "r849"
     ]
    },
    "ecd_StkPrcOrTsrEstimationMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "StkPrcOrTsrEstimationMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Price or TSR Estimation Method [Text Block]",
        "terseLabel": "Stock Price or TSR Estimation Method"
       }
      }
     },
     "auth_ref": [
      "r868",
      "r878",
      "r888",
      "r920"
     ]
    },
    "us-gaap_StockAppreciationRightsSARSMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockAppreciationRightsSARSMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Appreciation Rights (SARs) [Member]",
        "terseLabel": "Stock Appreciation Rights (SARs)",
        "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Issuance of shares pursuant to vesting of restricted stock units (in shares)",
        "label": "Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures",
        "totalLabel": "Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures, Total",
        "terseLabel": "Issuance of shares pursuant to employee stock purchase plan and vesting of restricted stock units (in shares)",
        "documentation": "Number of shares issued during the period related to Restricted Stock Awards, net of any shares forfeited."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r97",
      "r98",
      "r129"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period",
        "terseLabel": "Exercise of stock options (in shares)",
        "documentation": "Number of share options (or share units) exercised during the current period."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r97",
      "r98",
      "r129",
      "r476"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Issuance of shares pursuant to vesting of restricted stock units",
        "label": "Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures",
        "terseLabel": "Issuance of shares pursuant to employee stock purchase plan and vesting of restricted stock units",
        "totalLabel": "Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures, Total",
        "documentation": "Value of stock related to Restricted Stock Awards issued during the period, net of the stock value of such awards forfeited."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r129"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Issued During Period, Value, Stock Options Exercised",
        "terseLabel": "Exercise of stock options",
        "documentation": "Value of stock issued as a result of the exercise of stock options."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r98",
      "r102",
      "r103",
      "r129"
     ]
    },
    "srt_StockRepurchaseProgramAuthorizedAmount1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "StockRepurchaseProgramAuthorizedAmount1",
     "crdr": "credit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock repurchase program, authorized amount",
        "label": "Share Repurchase Program, Authorized, Amount",
        "documentation": "Amount authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership."
       }
      }
     },
     "auth_ref": [
      "r1037"
     ]
    },
    "us-gaap_StockRepurchasedDuringPeriodShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockRepurchasedDuringPeriodShares",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock Repurchased During Period, Shares",
        "label": "Stock Repurchased During Period, Shares",
        "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r97",
      "r98",
      "r129",
      "r697",
      "r752",
      "r770"
     ]
    },
    "us-gaap_StockRepurchasedDuringPeriodValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockRepurchasedDuringPeriodValue",
     "crdr": "debit",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Repurchased During Period, Value",
        "terseLabel": "Stock Repurchased During Period, Value",
        "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r97",
      "r98",
      "r129",
      "r701",
      "r752",
      "r770",
      "r857"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityComponentsOfAccumulatedOtherComprehensiveLossDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED",
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity, Attributable to Parent",
        "periodEndLabel": "Balance",
        "periodStartLabel": "Balance",
        "totalLabel": "Total Stockholders\u2019 Equity",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r98",
      "r102",
      "r103",
      "r123",
      "r716",
      "r732",
      "r753",
      "r754",
      "r838",
      "r858",
      "r975",
      "r998",
      "r1095",
      "r1151"
     ]
    },
    "us-gaap_StockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity, Attributable to Parent [Abstract]",
        "terseLabel": "Stockholders\u2019 Equity:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquityNoteAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityNoteAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Note [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Text Block]",
        "terseLabel": "Stockholders' Equity",
        "documentation": "The entire disclosure for equity."
       }
      }
     },
     "auth_ref": [
      "r126",
      "r212",
      "r422",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r435",
      "r436",
      "r552",
      "r755",
      "r756",
      "r771"
     ]
    },
    "icfi_SubcontractorsAndOtherDirectCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SubcontractorsAndOtherDirectCosts",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureSegmentInformationScheduleOfSegmentRevenueSignificantSegmentExpensesAndSegmentProfitDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subcontractors And Other Direct Costs",
        "documentation": "Subcontractors and other direct costs.",
        "terseLabel": "Subcontractors and other direct costs"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SubsequentEventLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SubsequentEventLineItems",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Event [Line Items]",
        "terseLabel": "Subsequent Event [Line Items]",
        "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event."
       }
      }
     },
     "auth_ref": [
      "r583",
      "r600"
     ]
    },
    "us-gaap_SubsequentEventMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SubsequentEventMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Event [Member]",
        "terseLabel": "Subsequent Event",
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r583",
      "r600"
     ]
    },
    "us-gaap_SubsequentEventTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SubsequentEventTable",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Event [Table]",
        "terseLabel": "Subsequent Event [Table]",
        "documentation": "Disclosure of information about significant event or transaction occurring between statement of financial position date and date when financial statements were issued."
       }
      }
     },
     "auth_ref": [
      "r583",
      "r600"
     ]
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SubsequentEventTypeAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Event Type [Axis]",
        "terseLabel": "Subsequent Event Type",
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r583",
      "r600"
     ]
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SubsequentEventTypeDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionAdditionalInformationDetail1",
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Event Type [Domain]",
        "terseLabel": "Subsequent Event Type",
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r583",
      "r600"
     ]
    },
    "us-gaap_SubsequentEventsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SubsequentEventsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SubsequentEventsTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureSubsequentEvents"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Text Block]",
        "terseLabel": "Subsequent Events",
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business."
       }
      }
     },
     "auth_ref": [
      "r599",
      "r601"
     ]
    },
    "icfi_SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SummaryOfContractReceivablesSoldButNotYetCollectedFromCustomersTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Contract Receivables Sold to MUFG but Not Yet Collected From Customers",
        "label": "Summary Of Contract Receivables Sold But Not Yet Collected From Customers [Table Text Block]",
        "documentation": "Summary of contract receivables sold but not yet collected from customers."
       }
      }
     },
     "auth_ref": []
    },
    "icfi_SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summary of reconciliation of billed contract receivables sold to MUFG including receivables sold to MUFC and collected from customers on behalf of MUFG and receivables not yet collected from customers.",
        "label": "Summary of Reconciliation of Billed Contract Receivables Sold to MUFG Including Receivables Sold To MUFC And Collected from Customers On Behalf of MUFG And Receivables Not Yet Collected from Customers [Table Text Block]",
        "terseLabel": "Summary of Reconciliation of Billed Contract Receivables Sold to MUF Including Receivables Sold to MUFC And Collected from Customers on Behalf of MUFG And Receivables Not Collected from Customers"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SummaryOfReconciliationOfCashCollectionsAndRemittancesForSaleOfBilledReceivablesTableTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Reconciliation of Cash Collections and Remittances to MUFG for Sale of Billed Receivables",
        "label": "Summary Of Reconciliation Of Cash Collections And Remittances For Sale Of Billed Receivables [Table Text Block]",
        "documentation": "Summary of reconciliation of cash collections and remittances for sale of billed receivables."
       }
      }
     },
     "auth_ref": []
    },
    "icfi_SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureContractReceivablesNetTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summary of reconciliation of cash collections from customers of billed contract receivables previously sold to MUFG including previous sold receivables and remittance of cash collections to MUFG and cash collected but not yet remitted to MUFG.",
        "label": "Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables and Remittance of Cash Collections to MUFG and Cash Collected But Not Yet Remitted to MUFG [Table Text Block]",
        "terseLabel": "Summary of Reconciliation of Cash Collections from Customers of Billed Contract Receivables Previously Sold to MUFG Including Previous Sold Receivables And Remittance of Cash Collections to MUFG And Cash Collected But Not Remitted to MUFG"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SupplementalCashFlowInformationAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental Cash Flow Information [Abstract]",
        "terseLabel": "Supplemental Disclosure of Cash Flow Information"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TabularListTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TabularListTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tabular List [Table Text Block]",
        "terseLabel": "Tabular List, Table"
       }
      }
     },
     "auth_ref": [
      "r914"
     ]
    },
    "us-gaap_TechnologyBasedIntangibleAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TechnologyBasedIntangibleAssetsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Technology-Based Intangible Assets [Member]",
        "terseLabel": "Developed Technology",
        "documentation": "Technology-based intangible assets, including, but not limited to, patented technology, unpatented technology, and developed technology rights."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r1011",
      "r1012",
      "r1013",
      "r1014",
      "r1016",
      "r1017",
      "r1019",
      "r1020"
     ]
    },
    "icfi_TermLoanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "TermLoanMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfDebtDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtScheduleOfFutureScheduledRepaymentsOfDebtPrincipalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term loan.",
        "label": "Term Loan [Member]",
        "terseLabel": "Term Loan"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TimeAndMaterialsContractMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TimeAndMaterialsContractMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Time-and-Materials Contract [Member]",
        "terseLabel": "Time-and-Materials",
        "documentation": "Contract with customer in which amount of consideration is based on time and materials consumed."
       }
      }
     },
     "auth_ref": [
      "r812"
     ]
    },
    "ecd_TotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Shareholder Return Amount",
        "terseLabel": "Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r906"
     ]
    },
    "ecd_TotalShareholderRtnVsPeerGroupTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TotalShareholderRtnVsPeerGroupTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Shareholder Return Vs Peer Group [Text Block]",
        "terseLabel": "Total Shareholder Return Vs Peer Group"
       }
      }
     },
     "auth_ref": [
      "r913"
     ]
    },
    "us-gaap_TrademarksAndTradeNamesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TrademarksAndTradeNamesMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfEstimatedUsefulLivesOfAcquiredIntangibleAssetsDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureAcquisitionAndDivestitureSummaryOfPreliminaryPurchasePriceAllocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trademarks and Trade Names [Member]",
        "terseLabel": "Trade Names and Trademarks",
        "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style, or rights either acquired through registration of a business name to gain or protect exclusive use thereof."
       }
      }
     },
     "auth_ref": [
      "r63",
      "r1011",
      "r1012",
      "r1013",
      "r1014",
      "r1015",
      "r1016",
      "r1017",
      "r1018",
      "r1019",
      "r1020"
     ]
    },
    "ecd_TradingArrAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TradingArrAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement [Axis]",
        "terseLabel": "Trading Arrangement:"
       }
      }
     },
     "auth_ref": [
      "r933"
     ]
    },
    "ecd_TradingArrByIndTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TradingArrByIndTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangements, by Individual [Table]",
        "terseLabel": "Trading Arrangements, by Individual"
       }
      }
     },
     "auth_ref": [
      "r935"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "TradingSymbol",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "verboseLabel": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureFairValueScheduleOfFinancialInstrumentsMeasuredAtFairValueOnRecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Instruments [Domain]",
        "terseLabel": "Financial Instruments",
        "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": [
      "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",
      "r313",
      "r314",
      "r315",
      "r417",
      "r434",
      "r551",
      "r575",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622",
      "r623",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r659",
      "r826",
      "r828",
      "r830",
      "r831",
      "r832",
      "r833",
      "r834",
      "r835",
      "r836",
      "r839",
      "r953",
      "r954",
      "r955",
      "r956",
      "r957",
      "r958",
      "r959",
      "r994",
      "r995",
      "r996",
      "r997",
      "r1079",
      "r1082",
      "r1083",
      "r1084",
      "r1091",
      "r1094"
     ]
    },
    "ecd_TrdArrAdoptionDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrAdoptionDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Adoption Date",
        "terseLabel": "Adoption Date"
       }
      }
     },
     "auth_ref": [
      "r936"
     ]
    },
    "ecd_TrdArrDuration": {
     "xbrltype": "durationItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrDuration",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Duration",
        "terseLabel": "Arrangement Duration"
       }
      }
     },
     "auth_ref": [
      "r937"
     ]
    },
    "ecd_TrdArrExpirationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrExpirationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Expiration Date",
        "terseLabel": "Expiration Date"
       }
      }
     },
     "auth_ref": [
      "r937"
     ]
    },
    "ecd_TrdArrIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r935"
     ]
    },
    "ecd_TrdArrIndTitle": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrIndTitle",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Title",
        "terseLabel": "Title"
       }
      }
     },
     "auth_ref": [
      "r935"
     ]
    },
    "ecd_TrdArrSecuritiesAggAvailAmt": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrSecuritiesAggAvailAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Securities Aggregate Available Amount",
        "terseLabel": "Aggregate Available"
       }
      }
     },
     "auth_ref": [
      "r938"
     ]
    },
    "ecd_TrdArrTerminationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrTerminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Termination Date",
        "terseLabel": "Termination Date"
       }
      }
     },
     "auth_ref": [
      "r936"
     ]
    },
    "us-gaap_TreasuryStockCommonMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockCommonMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Treasury Stock, Common [Member]",
        "terseLabel": "Treasury Stock",
        "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r50"
     ]
    },
    "us-gaap_TreasuryStockCommonShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockCommonShares",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical",
      "http://www.icf.com/20250331/taxonomy/role/StatementConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Treasury Stock, Common, Shares",
        "terseLabel": "Treasury stock, shares (in shares)",
        "periodEndLabel": "Balance (in shares)",
        "periodStartLabel": "Balance (in shares)",
        "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r50"
     ]
    },
    "us-gaap_TreasuryStockTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockTextBlock",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureShareRepurchaseProgram"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Treasury Stock [Text Block]",
        "terseLabel": "Share Repurchase Program",
        "documentation": "The entire disclosure for treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock."
       }
      }
     },
     "auth_ref": [
      "r130"
     ]
    },
    "us-gaap_TreasuryStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockValue",
     "crdr": "debit",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Treasury Stock, Value",
        "totalLabel": "Treasury Stock, Value, Total",
        "negatedLabel": "Treasury stock, 5,876,530 and 5,520,672 shares at March 31, 2025 and December 31, 2024, respectively",
        "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury."
       }
      }
     },
     "auth_ref": [
      "r50",
      "r53",
      "r98",
      "r102"
     ]
    },
    "icfi_TwoHundredMillionShareRepurchaseProgramMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "TwoHundredMillionShareRepurchaseProgramMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquityAdditionalInformationDetails",
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "$200 Million Share Repurchase Program",
        "label": "Two Hundred Million Share Repurchase Program [Member]",
        "documentation": "Two hundred million share repurchase program."
       }
      }
     },
     "auth_ref": []
    },
    "icfi_USFederalGovernmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "USFederalGovernmentMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "US federal government.",
        "label": "U S Federal Government [Member]",
        "terseLabel": "U.S. Federal Government"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_USStateAndInternationalGovernmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "USStateAndInternationalGovernmentMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "US state and international government.",
        "label": "U S State And International Government [Member]",
        "terseLabel": "Total Government"
       }
      }
     },
     "auth_ref": []
    },
    "icfi_USStateAndLocalGovernmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "USStateAndLocalGovernmentMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureRevenueRecognitionDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "US state and local government.",
        "label": "U S State And Local Government [Member]",
        "terseLabel": "U.S. State and Local Government"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_UndrlygSecurityMktPriceChngPct": {
     "xbrltype": "pureItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "UndrlygSecurityMktPriceChngPct",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Underlying Security Market Price Change, Percent",
        "terseLabel": "Underlying Security Market Price Change"
       }
      }
     },
     "auth_ref": [
      "r932"
     ]
    },
    "us-gaap_UseOfEstimates": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UseOfEstimates",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureBasisOfPresentationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Use of Estimates, Policy [Policy Text Block]",
        "terseLabel": "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": [
      "r36",
      "r37",
      "r38",
      "r155",
      "r156",
      "r157",
      "r158"
     ]
    },
    "us-gaap_VariableRateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableRateAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable Rate [Axis]",
        "terseLabel": "Variable Rate",
        "documentation": "Information by type of variable rate."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_VariableRateDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableRateDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable Rate [Domain]",
        "terseLabel": "Variable Rate",
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_VestingAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VestingAxis",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting [Axis]",
        "terseLabel": "Vesting",
        "documentation": "Information by vesting schedule of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r1040",
      "r1041",
      "r1042",
      "r1043",
      "r1044",
      "r1045",
      "r1046",
      "r1047",
      "r1048",
      "r1049",
      "r1050",
      "r1051",
      "r1052",
      "r1053",
      "r1054",
      "r1055",
      "r1056",
      "r1057",
      "r1058",
      "r1059",
      "r1060",
      "r1061",
      "r1062",
      "r1063",
      "r1064",
      "r1065"
     ]
    },
    "us-gaap_VestingDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VestingDomain",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting [Domain]",
        "terseLabel": "Vesting",
        "documentation": "Vesting schedule of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r1040",
      "r1041",
      "r1042",
      "r1043",
      "r1044",
      "r1045",
      "r1046",
      "r1047",
      "r1048",
      "r1049",
      "r1050",
      "r1051",
      "r1052",
      "r1053",
      "r1054",
      "r1055",
      "r1056",
      "r1057",
      "r1058",
      "r1059",
      "r1060",
      "r1061",
      "r1062",
      "r1063",
      "r1064",
      "r1065"
     ]
    },
    "icfi_VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vesting of RSUs and PSAs",
        "label": "Vesting of Restricted Stock Units and Performance Share Awards [Member]",
        "documentation": "Vesting of restricted stock units and performance share awards member."
       }
      }
     },
     "auth_ref": []
    },
    "icfi_VestingOfRestrictedStockUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.icf.com/20250331",
     "localname": "VestingOfRestrictedStockUnitsMember",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureStockholdersEquitySummaryOfRepurchaseOfSharesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Vesting of Restricted Stock Units.",
        "label": "Vesting of Restricted Stock Units [Member]",
        "terseLabel": "Vesting of RSUs"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member]",
        "terseLabel": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year"
       }
      }
     },
     "auth_ref": [
      "r902"
     ]
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "terseLabel": "Diluted",
        "totalLabel": "Weighted-average number of diluted shares outstanding during the period",
        "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": [
      "r233",
      "r241"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "calculation": {
      "http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails": {
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/DisclosureEarningsPerShareScheduleOfEarningsPerShareIncludingDilutiveEffectOfStockAwardsDetails",
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Basic",
        "verboseLabel": "Weighted-average number of basic shares outstanding during the period",
        "totalLabel": "Weighted Average Number of Shares Outstanding, Basic, Total",
        "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": [
      "r232",
      "r241"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract",
     "presentation": [
      "http://www.icf.com/20250331/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding Reconciliation [Abstract]",
        "terseLabel": "Weighted-average Shares:"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member]",
        "terseLabel": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested"
       }
      }
     },
     "auth_ref": [
      "r900"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "15",
   "Paragraph": "12",
   "Subparagraph": "(f)(2)",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481410/810-10-15-12"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "16",
   "SubTopic": "10",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479405/805-10-25-16"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "6",
   "SubTopic": "10",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479405/805-10-25-6"
  },
  "r3": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "7",
   "SubTopic": "10",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479405/805-10-25-7"
  },
  "r4": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "7",
   "SubTopic": "30",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479637/805-30-30-7"
  },
  "r5": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "8",
   "SubTopic": "30",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479637/805-30-30-8"
  },
  "r6": {
   "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"
  },
  "r7": {
   "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"
  },
  "r8": {
   "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"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-20"
  },
  "r10": {
   "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"
  },
  "r11": {
   "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"
  },
  "r12": {
   "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"
  },
  "r13": {
   "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"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "SubTopic": "30",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r15": {
   "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"
  },
  "r16": {
   "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"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "SubTopic": "10",
   "Topic": "815",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-2"
  },
  "r18": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13",
   "SubTopic": "20",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-13"
  },
  "r21": {
   "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"
  },
  "r22": {
   "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"
  },
  "r23": {
   "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"
  },
  "r24": {
   "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"
  },
  "r25": {
   "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"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14"
  },
  "r30": {
   "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"
  },
  "r31": {
   "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"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-3"
  },
  "r33": {
   "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"
  },
  "r34": {
   "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"
  },
  "r35": {
   "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"
  },
  "r36": {
   "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"
  },
  "r37": {
   "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"
  },
  "r38": {
   "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"
  },
  "r39": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r43": {
   "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"
  },
  "r44": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482130/360-10-45-4"
  },
  "r46": {
   "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"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "470",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-5"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-3"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-8"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481549/505-30-45-1"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-2"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-3"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r56": {
   "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"
  },
  "r57": {
   "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"
  },
  "r58": {
   "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"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r60": {
   "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"
  },
  "r61": {
   "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"
  },
  "r62": {
   "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"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r64": {
   "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"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1"
  },
  "r66": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1A"
  },
  "r67": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1B"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-2"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4"
  },
  "r70": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r71": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r72": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r73": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r74": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r75": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r76": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r77": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-5"
  },
  "r78": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8"
  },
  "r79": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "25",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480238/815-25-50-1"
  },
  "r80": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-1"
  },
  "r81": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-20"
  },
  "r82": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-21"
  },
  "r83": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "470",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3"
  },
  "r84": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/205/tableOfContent"
  },
  "r85": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/205-20/tableOfContent"
  },
  "r86": {
   "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"
  },
  "r87": {
   "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"
  },
  "r88": {
   "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"
  },
  "r89": {
   "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"
  },
  "r90": {
   "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"
  },
  "r91": {
   "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"
  },
  "r92": {
   "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"
  },
  "r93": {
   "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"
  },
  "r94": {
   "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"
  },
  "r95": {
   "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"
  },
  "r96": {
   "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"
  },
  "r97": {
   "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"
  },
  "r98": {
   "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"
  },
  "r99": {
   "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(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r100": {
   "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"
  },
  "r101": {
   "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"
  },
  "r102": {
   "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"
  },
  "r103": {
   "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"
  },
  "r104": {
   "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"
  },
  "r105": {
   "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(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r106": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/220/tableOfContent"
  },
  "r107": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r108": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r109": {
   "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"
  },
  "r110": {
   "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"
  },
  "r111": {
   "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(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r112": {
   "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(2)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r113": {
   "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"
  },
  "r114": {
   "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"
  },
  "r115": {
   "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"
  },
  "r116": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r117": {
   "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"
  },
  "r118": {
   "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"
  },
  "r119": {
   "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"
  },
  "r120": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25"
  },
  "r121": {
   "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"
  },
  "r122": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r123": {
   "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"
  },
  "r124": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/440/tableOfContent"
  },
  "r125": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/470/tableOfContent"
  },
  "r126": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/505/tableOfContent"
  },
  "r127": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-6"
  },
  "r128": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-7"
  },
  "r129": {
   "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"
  },
  "r130": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/505-30/tableOfContent"
  },
  "r131": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r132": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/805/tableOfContent"
  },
  "r133": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r134": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r135": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/810/tableOfContent"
  },
  "r136": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19"
  },
  "r137": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "815",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/815/tableOfContent"
  },
  "r138": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r139": {
   "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(1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r140": {
   "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(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r141": {
   "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"
  },
  "r142": {
   "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(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r143": {
   "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"
  },
  "r144": {
   "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(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r145": {
   "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"
  },
  "r146": {
   "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"
  },
  "r147": {
   "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"
  },
  "r148": {
   "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"
  },
  "r149": {
   "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"
  },
  "r150": {
   "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"
  },
  "r151": {
   "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"
  },
  "r152": {
   "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"
  },
  "r153": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r154": {
   "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"
  },
  "r155": {
   "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"
  },
  "r156": {
   "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"
  },
  "r157": {
   "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"
  },
  "r158": {
   "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"
  },
  "r159": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13"
  },
  "r160": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r161": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r162": {
   "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"
  },
  "r163": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/606/tableOfContent"
  },
  "r164": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r165": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12A",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r166": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column A",
   "Subparagraph": "(a)",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r167": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column A",
   "Subparagraph": "(b)",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r168": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "14",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r169": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column A",
   "Publisher": "SEC"
  },
  "r170": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column B",
   "Publisher": "SEC"
  },
  "r171": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column C",
   "Publisher": "SEC"
  },
  "r172": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column D",
   "Publisher": "SEC"
  },
  "r173": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column E",
   "Publisher": "SEC"
  },
  "r174": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column F",
   "Publisher": "SEC"
  },
  "r175": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 11",
   "Section": "L",
   "Publisher": "SEC"
  },
  "r176": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 11",
   "Section": "M",
   "Paragraph": "Question 2",
   "Publisher": "SEC"
  },
  "r177": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 5",
   "Section": "Y",
   "Paragraph": "Question 2",
   "Publisher": "SEC"
  },
  "r178": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 5",
   "Section": "Y",
   "Paragraph": "Question 4",
   "Publisher": "SEC"
  },
  "r179": {
   "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"
  },
  "r180": {
   "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"
  },
  "r181": {
   "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"
  },
  "r182": {
   "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"
  },
  "r183": {
   "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"
  },
  "r184": {
   "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(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r185": {
   "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"
  },
  "r186": {
   "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"
  },
  "r187": {
   "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"
  },
  "r188": {
   "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(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r189": {
   "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(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r190": {
   "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"
  },
  "r191": {
   "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"
  },
  "r192": {
   "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"
  },
  "r193": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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"
  },
  "r196": {
   "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"
  },
  "r197": {
   "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"
  },
  "r198": {
   "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"
  },
  "r199": {
   "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"
  },
  "r200": {
   "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"
  },
  "r201": {
   "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"
  },
  "r202": {
   "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"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-2"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "r210": {
   "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"
  },
  "r211": {
   "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"
  },
  "r212": {
   "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(e)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r213": {
   "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"
  },
  "r214": {
   "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"
  },
  "r215": {
   "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"
  },
  "r216": {
   "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"
  },
  "r217": {
   "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"
  },
  "r218": {
   "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"
  },
  "r219": {
   "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"
  },
  "r220": {
   "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"
  },
  "r221": {
   "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"
  },
  "r222": {
   "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"
  },
  "r223": {
   "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"
  },
  "r224": {
   "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"
  },
  "r225": {
   "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"
  },
  "r226": {
   "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"
  },
  "r227": {
   "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"
  },
  "r228": {
   "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"
  },
  "r229": {
   "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"
  },
  "r230": {
   "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"
  },
  "r231": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/260/tableOfContent"
  },
  "r232": {
   "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"
  },
  "r233": {
   "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"
  },
  "r234": {
   "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"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-22"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-23"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-28A"
  },
  "r238": {
   "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"
  },
  "r239": {
   "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"
  },
  "r240": {
   "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"
  },
  "r241": {
   "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"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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"
  },
  "r244": {
   "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"
  },
  "r245": {
   "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"
  },
  "r246": {
   "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"
  },
  "r247": {
   "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"
  },
  "r248": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/280/tableOfContent"
  },
  "r249": {
   "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"
  },
  "r250": {
   "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"
  },
  "r251": {
   "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"
  },
  "r252": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21"
  },
  "r253": {
   "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"
  },
  "r254": {
   "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"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "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"
  },
  "r258": {
   "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"
  },
  "r259": {
   "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"
  },
  "r260": {
   "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"
  },
  "r261": {
   "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"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r270": {
   "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"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "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"
  },
  "r274": {
   "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"
  },
  "r275": {
   "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"
  },
  "r276": {
   "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"
  },
  "r277": {
   "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"
  },
  "r278": {
   "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"
  },
  "r279": {
   "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"
  },
  "r280": {
   "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"
  },
  "r281": {
   "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"
  },
  "r282": {
   "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"
  },
  "r283": {
   "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"
  },
  "r284": {
   "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"
  },
  "r285": {
   "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"
  },
  "r286": {
   "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"
  },
  "r287": {
   "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"
  },
  "r288": {
   "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"
  },
  "r289": {
   "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"
  },
  "r290": {
   "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"
  },
  "r291": {
   "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"
  },
  "r292": {
   "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"
  },
  "r293": {
   "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"
  },
  "r294": {
   "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"
  },
  "r295": {
   "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"
  },
  "r296": {
   "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"
  },
  "r297": {
   "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"
  },
  "r298": {
   "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"
  },
  "r299": {
   "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"
  },
  "r300": {
   "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"
  },
  "r301": {
   "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"
  },
  "r302": {
   "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"
  },
  "r303": {
   "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"
  },
  "r304": {
   "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"
  },
  "r305": {
   "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"
  },
  "r306": {
   "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"
  },
  "r307": {
   "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"
  },
  "r308": {
   "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"
  },
  "r309": {
   "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"
  },
  "r310": {
   "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"
  },
  "r311": {
   "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"
  },
  "r312": {
   "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"
  },
  "r313": {
   "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"
  },
  "r314": {
   "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"
  },
  "r315": {
   "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"
  },
  "r316": {
   "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"
  },
  "r317": {
   "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"
  },
  "r318": {
   "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"
  },
  "r319": {
   "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"
  },
  "r320": {
   "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"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-11"
  },
  "r322": {
   "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"
  },
  "r323": {
   "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"
  },
  "r324": {
   "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"
  },
  "r325": {
   "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"
  },
  "r326": {
   "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"
  },
  "r327": {
   "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"
  },
  "r328": {
   "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"
  },
  "r329": {
   "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"
  },
  "r330": {
   "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"
  },
  "r331": {
   "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"
  },
  "r332": {
   "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"
  },
  "r333": {
   "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"
  },
  "r334": {
   "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"
  },
  "r335": {
   "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"
  },
  "r336": {
   "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"
  },
  "r337": {
   "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"
  },
  "r338": {
   "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"
  },
  "r339": {
   "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"
  },
  "r340": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1A"
  },
  "r341": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-2"
  },
  "r342": {
   "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"
  },
  "r343": {
   "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"
  },
  "r344": {
   "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"
  },
  "r345": {
   "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"
  },
  "r346": {
   "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"
  },
  "r347": {
   "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"
  },
  "r348": {
   "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"
  },
  "r349": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "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"
  },
  "r352": {
   "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"
  },
  "r353": {
   "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"
  },
  "r354": {
   "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"
  },
  "r355": {
   "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"
  },
  "r356": {
   "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"
  },
  "r357": {
   "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"
  },
  "r358": {
   "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"
  },
  "r359": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "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"
  },
  "r362": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/420/tableOfContent"
  },
  "r363": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1"
  },
  "r364": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1"
  },
  "r365": {
   "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"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1"
  },
  "r369": {
   "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.b.1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2"
  },
  "r370": {
   "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.b.2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2"
  },
  "r371": {
   "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"
  },
  "r372": {
   "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.e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2"
  },
  "r373": {
   "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"
  },
  "r374": {
   "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"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-1"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4"
  },
  "r377": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r378": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r379": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1"
  },
  "r380": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-3"
  },
  "r381": {
   "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"
  },
  "r382": {
   "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"
  },
  "r383": {
   "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"
  },
  "r384": {
   "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"
  },
  "r385": {
   "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"
  },
  "r386": {
   "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"
  },
  "r387": {
   "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"
  },
  "r388": {
   "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"
  },
  "r389": {
   "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"
  },
  "r390": {
   "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"
  },
  "r391": {
   "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"
  },
  "r392": {
   "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"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r394": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r395": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r396": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r398": {
   "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"
  },
  "r399": {
   "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"
  },
  "r400": {
   "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"
  },
  "r401": {
   "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"
  },
  "r402": {
   "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"
  },
  "r403": {
   "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"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "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": "1D",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r407": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(a)",
   "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": "1E",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r410": {
   "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"
  },
  "r411": {
   "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"
  },
  "r412": {
   "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"
  },
  "r413": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r415": {
   "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"
  },
  "r416": {
   "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"
  },
  "r417": {
   "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"
  },
  "r418": {
   "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"
  },
  "r419": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4"
  },
  "r420": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4"
  },
  "r421": {
   "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"
  },
  "r422": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r423": {
   "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"
  },
  "r424": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r426": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r427": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r428": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14"
  },
  "r429": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14"
  },
  "r430": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14"
  },
  "r431": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-16"
  },
  "r432": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r433": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r434": {
   "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"
  },
  "r435": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r436": {
   "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"
  },
  "r437": {
   "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"
  },
  "r438": {
   "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"
  },
  "r439": {
   "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"
  },
  "r440": {
   "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"
  },
  "r441": {
   "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"
  },
  "r442": {
   "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"
  },
  "r443": {
   "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"
  },
  "r444": {
   "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"
  },
  "r445": {
   "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"
  },
  "r446": {
   "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"
  },
  "r447": {
   "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"
  },
  "r448": {
   "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"
  },
  "r449": {
   "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"
  },
  "r450": {
   "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"
  },
  "r451": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8"
  },
  "r452": {
   "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"
  },
  "r453": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r454": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r455": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r456": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r457": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r458": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r459": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r461": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r462": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/718/tableOfContent"
  },
  "r463": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-1D"
  },
  "r464": {
   "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"
  },
  "r465": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-3"
  },
  "r466": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480454/718-10-45-1"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r473": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r474": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r476": {
   "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"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r480": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r482": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r483": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r484": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r485": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r486": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r487": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r488": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r489": {
   "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"
  },
  "r490": {
   "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"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r492": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r493": {
   "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"
  },
  "r494": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r498": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r499": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.F)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r500": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "720",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1"
  },
  "r501": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/740/tableOfContent"
  },
  "r502": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-4"
  },
  "r503": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-6"
  },
  "r504": {
   "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"
  },
  "r505": {
   "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"
  },
  "r506": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r507": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r508": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r509": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r510": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r511": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r512": {
   "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"
  },
  "r513": {
   "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"
  },
  "r514": {
   "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"
  },
  "r515": {
   "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"
  },
  "r516": {
   "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"
  },
  "r517": {
   "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"
  },
  "r518": {
   "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"
  },
  "r519": {
   "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.1.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r520": {
   "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"
  },
  "r521": {
   "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"
  },
  "r522": {
   "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"
  },
  "r523": {
   "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"
  },
  "r524": {
   "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"
  },
  "r525": {
   "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"
  },
  "r526": {
   "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"
  },
  "r527": {
   "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"
  },
  "r528": {
   "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"
  },
  "r529": {
   "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"
  },
  "r530": {
   "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"
  },
  "r531": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r532": {
   "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"
  },
  "r533": {
   "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"
  },
  "r534": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19"
  },
  "r535": {
   "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"
  },
  "r536": {
   "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"
  },
  "r537": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r538": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r539": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r540": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1B"
  },
  "r541": {
   "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"
  },
  "r542": {
   "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"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4E"
  },
  "r544": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-5C"
  },
  "r545": {
   "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"
  },
  "r546": {
   "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"
  },
  "r547": {
   "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"
  },
  "r548": {
   "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"
  },
  "r549": {
   "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"
  },
  "r550": {
   "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"
  },
  "r551": {
   "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"
  },
  "r552": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-6"
  },
  "r553": {
   "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"
  },
  "r554": {
   "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"
  },
  "r555": {
   "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"
  },
  "r556": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r557": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r558": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r559": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r560": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r561": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r562": {
   "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"
  },
  "r563": {
   "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"
  },
  "r564": {
   "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"
  },
  "r565": {
   "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"
  },
  "r566": {
   "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"
  },
  "r567": {
   "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"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r569": {
   "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"
  },
  "r570": {
   "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"
  },
  "r571": {
   "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"
  },
  "r572": {
   "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"
  },
  "r573": {
   "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"
  },
  "r574": {
   "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"
  },
  "r575": {
   "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"
  },
  "r576": {
   "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"
  },
  "r577": {
   "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"
  },
  "r578": {
   "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"
  },
  "r579": {
   "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"
  },
  "r580": {
   "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"
  },
  "r581": {
   "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"
  },
  "r582": {
   "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"
  },
  "r583": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-2"
  },
  "r584": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-1A"
  },
  "r585": {
   "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"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1"
  },
  "r587": {
   "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"
  },
  "r588": {
   "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"
  },
  "r589": {
   "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"
  },
  "r590": {
   "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"
  },
  "r591": {
   "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"
  },
  "r592": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3"
  },
  "r593": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3"
  },
  "r594": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3"
  },
  "r595": {
   "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"
  },
  "r596": {
   "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"
  },
  "r597": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A"
  },
  "r598": {
   "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"
  },
  "r599": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/855/tableOfContent"
  },
  "r600": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483399/855-10-50-2"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483399/855-10-50-2"
  },
  "r602": {
   "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"
  },
  "r603": {
   "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"
  },
  "r604": {
   "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"
  },
  "r605": {
   "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"
  },
  "r606": {
   "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"
  },
  "r607": {
   "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"
  },
  "r608": {
   "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"
  },
  "r609": {
   "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"
  },
  "r610": {
   "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"
  },
  "r611": {
   "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"
  },
  "r612": {
   "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"
  },
  "r613": {
   "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"
  },
  "r614": {
   "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"
  },
  "r615": {
   "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"
  },
  "r616": {
   "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"
  },
  "r617": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7"
  },
  "r618": {
   "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"
  },
  "r619": {
   "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"
  },
  "r620": {
   "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"
  },
  "r621": {
   "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"
  },
  "r622": {
   "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"
  },
  "r623": {
   "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"
  },
  "r624": {
   "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"
  },
  "r625": {
   "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"
  },
  "r626": {
   "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"
  },
  "r627": {
   "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"
  },
  "r628": {
   "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"
  },
  "r629": {
   "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"
  },
  "r630": {
   "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"
  },
  "r631": {
   "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"
  },
  "r632": {
   "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"
  },
  "r633": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "910",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482546/910-10-50-6"
  },
  "r634": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478345/912-310-45-2"
  },
  "r635": {
   "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"
  },
  "r636": {
   "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"
  },
  "r637": {
   "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"
  },
  "r638": {
   "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"
  },
  "r639": {
   "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"
  },
  "r640": {
   "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"
  },
  "r641": {
   "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"
  },
  "r642": {
   "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"
  },
  "r643": {
   "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"
  },
  "r644": {
   "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"
  },
  "r645": {
   "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"
  },
  "r646": {
   "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"
  },
  "r647": {
   "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)(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r648": {
   "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)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r649": {
   "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"
  },
  "r650": {
   "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"
  },
  "r651": {
   "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"
  },
  "r652": {
   "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"
  },
  "r653": {
   "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"
  },
  "r654": {
   "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"
  },
  "r655": {
   "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"
  },
  "r656": {
   "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(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r657": {
   "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"
  },
  "r658": {
   "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"
  },
  "r659": {
   "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"
  },
  "r660": {
   "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"
  },
  "r661": {
   "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"
  },
  "r662": {
   "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"
  },
  "r663": {
   "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"
  },
  "r664": {
   "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"
  },
  "r665": {
   "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"
  },
  "r666": {
   "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"
  },
  "r667": {
   "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"
  },
  "r668": {
   "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"
  },
  "r669": {
   "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"
  },
  "r670": {
   "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"
  },
  "r671": {
   "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"
  },
  "r672": {
   "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"
  },
  "r673": {
   "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"
  },
  "r674": {
   "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"
  },
  "r675": {
   "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"
  },
  "r676": {
   "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"
  },
  "r677": {
   "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"
  },
  "r678": {
   "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"
  },
  "r679": {
   "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"
  },
  "r680": {
   "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"
  },
  "r681": {
   "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"
  },
  "r682": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r683": {
   "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"
  },
  "r684": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r685": {
   "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"
  },
  "r686": {
   "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"
  },
  "r687": {
   "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"
  },
  "r688": {
   "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"
  },
  "r689": {
   "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"
  },
  "r690": {
   "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"
  },
  "r691": {
   "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"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.W.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "825",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B"
  },
  "r694": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480424/946-10-50-1"
  },
  "r695": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480424/946-10-50-2"
  },
  "r696": {
   "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"
  },
  "r697": {
   "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(i)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r698": {
   "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"
  },
  "r699": {
   "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"
  },
  "r700": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-3"
  },
  "r701": {
   "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"
  },
  "r702": {
   "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"
  },
  "r703": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r704": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r705": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "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(1))",
   "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": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r708": {
   "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"
  },
  "r709": {
   "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"
  },
  "r710": {
   "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"
  },
  "r711": {
   "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"
  },
  "r712": {
   "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"
  },
  "r713": {
   "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(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r714": {
   "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"
  },
  "r715": {
   "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"
  },
  "r716": {
   "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"
  },
  "r717": {
   "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"
  },
  "r718": {
   "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"
  },
  "r719": {
   "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"
  },
  "r720": {
   "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"
  },
  "r721": {
   "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"
  },
  "r722": {
   "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"
  },
  "r723": {
   "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"
  },
  "r724": {
   "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"
  },
  "r725": {
   "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"
  },
  "r726": {
   "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"
  },
  "r727": {
   "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"
  },
  "r728": {
   "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"
  },
  "r729": {
   "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"
  },
  "r730": {
   "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"
  },
  "r731": {
   "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"
  },
  "r732": {
   "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"
  },
  "r733": {
   "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"
  },
  "r734": {
   "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"
  },
  "r735": {
   "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"
  },
  "r736": {
   "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"
  },
  "r737": {
   "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"
  },
  "r738": {
   "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"
  },
  "r739": {
   "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"
  },
  "r740": {
   "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"
  },
  "r741": {
   "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"
  },
  "r742": {
   "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"
  },
  "r743": {
   "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"
  },
  "r744": {
   "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"
  },
  "r745": {
   "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"
  },
  "r746": {
   "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"
  },
  "r747": {
   "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"
  },
  "r748": {
   "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"
  },
  "r749": {
   "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"
  },
  "r750": {
   "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"
  },
  "r751": {
   "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"
  },
  "r752": {
   "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"
  },
  "r753": {
   "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"
  },
  "r754": {
   "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"
  },
  "r755": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2"
  },
  "r756": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2"
  },
  "r757": {
   "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 A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r758": {
   "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 A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r759": {
   "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 A)(Footnote 4)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r760": {
   "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 A)(Footnote 4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r761": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SX 210.12-13(Column A)(Footnote 3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5"
  },
  "r762": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SX 210.12-13(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5"
  },
  "r763": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SX 210.12-13(Column G)(Footnote 8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5"
  },
  "r764": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5A",
   "Subparagraph": "(SX 210.12-13A(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5A"
  },
  "r765": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5B",
   "Subparagraph": "(SX 210.12-13B(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5B"
  },
  "r766": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5B",
   "Subparagraph": "(SX 210.12-13B(Column E)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5B"
  },
  "r767": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5C",
   "Subparagraph": "(SX 210.12-13C(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C"
  },
  "r768": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5C",
   "Subparagraph": "(SX 210.12-13C(Column H)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C"
  },
  "r769": {
   "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 A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r770": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-2"
  },
  "r771": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-6"
  },
  "r772": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478785/954-310-50-2"
  },
  "r773": {
   "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"
  },
  "r774": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "976",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477332/976-310-50-1"
  },
  "r775": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "978",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479230/978-310-50-1"
  },
  "r776": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-1"
  },
  "r777": {
   "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"
  },
  "r778": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)(1)",
   "SubTopic": "10",
   "Topic": "815",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r779": {
   "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"
  },
  "r780": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r781": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-22"
  },
  "r782": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482739/220-10-55-15"
  },
  "r783": {
   "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"
  },
  "r784": {
   "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"
  },
  "r785": {
   "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"
  },
  "r786": {
   "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"
  },
  "r787": {
   "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"
  },
  "r788": {
   "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"
  },
  "r789": {
   "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"
  },
  "r790": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r791": {
   "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"
  },
  "r792": {
   "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"
  },
  "r793": {
   "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"
  },
  "r794": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r795": {
   "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"
  },
  "r796": {
   "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"
  },
  "r797": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r798": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481933/310-10-55-12A"
  },
  "r799": {
   "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"
  },
  "r800": {
   "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"
  },
  "r801": {
   "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"
  },
  "r802": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "27",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482395/460-10-55-27"
  },
  "r803": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r804": {
   "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"
  },
  "r805": {
   "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"
  },
  "r806": {
   "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"
  },
  "r807": {
   "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"
  },
  "r808": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r809": {
   "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"
  },
  "r810": {
   "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"
  },
  "r811": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r812": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r813": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r814": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r815": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r816": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r817": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r818": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480482/715-20-55-17"
  },
  "r819": {
   "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"
  },
  "r820": {
   "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"
  },
  "r821": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480547/715-80-55-8"
  },
  "r822": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "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"
  },
  "r823": {
   "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"
  },
  "r824": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4J"
  },
  "r825": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4K"
  },
  "r826": {
   "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"
  },
  "r827": {
   "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"
  },
  "r828": {
   "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"
  },
  "r829": {
   "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"
  },
  "r830": {
   "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"
  },
  "r831": {
   "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"
  },
  "r832": {
   "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"
  },
  "r833": {
   "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"
  },
  "r834": {
   "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"
  },
  "r835": {
   "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"
  },
  "r836": {
   "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"
  },
  "r837": {
   "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"
  },
  "r838": {
   "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"
  },
  "r839": {
   "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"
  },
  "r840": {
   "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"
  },
  "r841": {
   "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"
  },
  "r842": {
   "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"
  },
  "r843": {
   "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"
  },
  "r844": {
   "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"
  },
  "r845": {
   "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"
  },
  "r846": {
   "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"
  },
  "r847": {
   "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"
  },
  "r848": {
   "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"
  },
  "r849": {
   "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"
  },
  "r850": {
   "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"
  },
  "r851": {
   "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"
  },
  "r852": {
   "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"
  },
  "r853": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5C",
   "Subparagraph": "(SX 210.12-13C(Column A)(Footnote 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C"
  },
  "r854": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5C",
   "Subparagraph": "(SX 210.12-13C(Column B)(Footnote 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C"
  },
  "r855": {
   "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"
  },
  "r856": {
   "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"
  },
  "r857": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-11"
  },
  "r858": {
   "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"
  },
  "r859": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r860": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r861": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r862": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r863": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "16",
   "Subsection": "J",
   "Paragraph": "a"
  },
  "r864": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1"
  },
  "r865": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r866": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r867": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r868": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r869": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r870": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r871": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r872": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r873": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "2"
  },
  "r874": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a"
  },
  "r875": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r876": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r877": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r878": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r879": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r880": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r881": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r882": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r883": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "b"
  },
  "r884": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a"
  },
  "r885": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r886": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r887": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r888": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r889": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r890": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r891": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r892": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r893": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "b"
  },
  "r894": {
   "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"
  },
  "r895": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v"
  },
  "r896": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "1"
  },
  "r897": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "ii"
  },
  "r898": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii"
  },
  "r899": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Subclause": "ii"
  },
  "r900": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "i"
  },
  "r901": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "ii"
  },
  "r902": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "iii"
  },
  "r903": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "iv"
  },
  "r904": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "v"
  },
  "r905": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "vi"
  },
  "r906": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iv"
  },
  "r907": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "vi"
  },
  "r908": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "3"
  },
  "r909": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "4"
  },
  "r910": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "i"
  },
  "r911": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "ii"
  },
  "r912": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iii"
  },
  "r913": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iv"
  },
  "r914": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6"
  },
  "r915": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6",
   "Subparagraph": "i"
  },
  "r916": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1"
  },
  "r917": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r918": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r919": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r920": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r921": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r922": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r923": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r924": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r925": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "2"
  },
  "r926": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "1"
  },
  "r927": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2"
  },
  "r928": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "A"
  },
  "r929": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "C"
  },
  "r930": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "D"
  },
  "r931": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "E"
  },
  "r932": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "F"
  },
  "r933": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a"
  },
  "r934": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "1"
  },
  "r935": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "A"
  },
  "r936": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "B"
  },
  "r937": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "C"
  },
  "r938": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "D"
  },
  "r939": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "b",
   "Paragraph": "1"
  },
  "r940": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Number": "229",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1"
  },
  "r941": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "A",
   "Number": "229"
  },
  "r942": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Number": "229"
  },
  "r943": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Subclause": "i",
   "Number": "229"
  },
  "r944": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r945": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-10"
  },
  "r946": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483399/855-10-50-3"
  },
  "r947": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r948": {
   "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"
  },
  "r949": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r950": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "SubTopic": "825",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B"
  },
  "r951": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "SubTopic": "10",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r952": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(3)",
   "SubTopic": "10",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r953": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r954": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r955": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(2)",
   "Publisher": "SEC"
  },
  "r956": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r957": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(i)",
   "Publisher": "SEC"
  },
  "r958": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(ii)",
   "Publisher": "SEC"
  },
  "r959": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(iii)",
   "Publisher": "SEC"
  },
  "r960": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 5",
   "Section": "Y",
   "Paragraph": "Question 2",
   "Publisher": "SEC"
  },
  "r961": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "205",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483504/205-10-50-1"
  },
  "r962": {
   "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"
  },
  "r963": {
   "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"
  },
  "r964": {
   "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(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r965": {
   "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"
  },
  "r966": {
   "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"
  },
  "r967": {
   "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"
  },
  "r968": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r969": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14"
  },
  "r970": {
   "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"
  },
  "r971": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r972": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r973": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r974": {
   "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(f))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r975": {
   "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"
  },
  "r976": {
   "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(h)(1)(Note 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r977": {
   "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(h)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r978": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r979": {
   "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"
  },
  "r980": {
   "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"
  },
  "r981": {
   "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"
  },
  "r982": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r983": {
   "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"
  },
  "r984": {
   "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"
  },
  "r985": {
   "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"
  },
  "r986": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-18"
  },
  "r987": {
   "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"
  },
  "r988": {
   "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"
  },
  "r989": {
   "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"
  },
  "r990": {
   "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"
  },
  "r991": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/310-10/tableOfContent"
  },
  "r992": {
   "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"
  },
  "r993": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "40",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481628/310-20-40-7"
  },
  "r994": {
   "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"
  },
  "r995": {
   "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"
  },
  "r996": {
   "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"
  },
  "r997": {
   "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"
  },
  "r998": {
   "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"
  },
  "r999": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1000": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1001": {
   "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"
  },
  "r1002": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1003": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1004": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1005": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1006": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1007": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1008": {
   "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"
  },
  "r1009": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1A"
  },
  "r1010": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1011": {
   "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"
  },
  "r1012": {
   "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"
  },
  "r1013": {
   "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"
  },
  "r1014": {
   "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"
  },
  "r1015": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1016": {
   "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"
  },
  "r1017": {
   "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"
  },
  "r1018": {
   "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"
  },
  "r1019": {
   "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"
  },
  "r1020": {
   "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"
  },
  "r1021": {
   "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"
  },
  "r1022": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r1023": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r1024": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1025": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "410",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481931/410-30-50-10"
  },
  "r1026": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/450/tableOfContent"
  },
  "r1027": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4"
  },
  "r1028": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9"
  },
  "r1029": {
   "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"
  },
  "r1030": {
   "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"
  },
  "r1031": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-3"
  },
  "r1032": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1033": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1034": {
   "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"
  },
  "r1035": {
   "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"
  },
  "r1036": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r1037": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4"
  },
  "r1038": {
   "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"
  },
  "r1039": {
   "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"
  },
  "r1040": {
   "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"
  },
  "r1041": {
   "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"
  },
  "r1042": {
   "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"
  },
  "r1043": {
   "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"
  },
  "r1044": {
   "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"
  },
  "r1045": {
   "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"
  },
  "r1046": {
   "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"
  },
  "r1047": {
   "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"
  },
  "r1048": {
   "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"
  },
  "r1049": {
   "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"
  },
  "r1050": {
   "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"
  },
  "r1051": {
   "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"
  },
  "r1052": {
   "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"
  },
  "r1053": {
   "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"
  },
  "r1054": {
   "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"
  },
  "r1055": {
   "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"
  },
  "r1056": {
   "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"
  },
  "r1057": {
   "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"
  },
  "r1058": {
   "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"
  },
  "r1059": {
   "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"
  },
  "r1060": {
   "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"
  },
  "r1061": {
   "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"
  },
  "r1062": {
   "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"
  },
  "r1063": {
   "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"
  },
  "r1064": {
   "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"
  },
  "r1065": {
   "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"
  },
  "r1066": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1067": {
   "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"
  },
  "r1068": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r1069": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r1070": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1071": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1072": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480060/805-50-25-1"
  },
  "r1073": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480027/805-50-30-1"
  },
  "r1074": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480027/805-50-30-2"
  },
  "r1075": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1A"
  },
  "r1076": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1B"
  },
  "r1077": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480682/815-20-25-6A"
  },
  "r1078": {
   "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"
  },
  "r1079": {
   "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"
  },
  "r1080": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1081": {
   "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"
  },
  "r1082": {
   "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"
  },
  "r1083": {
   "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"
  },
  "r1084": {
   "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"
  },
  "r1085": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1086": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1087": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1088": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1089": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1090": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1091": {
   "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"
  },
  "r1092": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r1093": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1094": {
   "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"
  },
  "r1095": {
   "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"
  },
  "r1096": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1097": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1098": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1099": {
   "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"
  },
  "r1100": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1"
  },
  "r1101": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479365/842-20-25-6"
  },
  "r1102": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3"
  },
  "r1103": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3"
  },
  "r1104": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r1105": {
   "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"
  },
  "r1106": {
   "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"
  },
  "r1107": {
   "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"
  },
  "r1108": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1109": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1110": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1111": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1112": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1113": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1114": {
   "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"
  },
  "r1115": {
   "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"
  },
  "r1116": {
   "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"
  },
  "r1117": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3"
  },
  "r1118": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3"
  },
  "r1119": {
   "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"
  },
  "r1120": {
   "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"
  },
  "r1121": {
   "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"
  },
  "r1122": {
   "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"
  },
  "r1123": {
   "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"
  },
  "r1124": {
   "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"
  },
  "r1125": {
   "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"
  },
  "r1126": {
   "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"
  },
  "r1127": {
   "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"
  },
  "r1128": {
   "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"
  },
  "r1129": {
   "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"
  },
  "r1130": {
   "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"
  },
  "r1131": {
   "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"
  },
  "r1132": {
   "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"
  },
  "r1133": {
   "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"
  },
  "r1134": {
   "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"
  },
  "r1135": {
   "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"
  },
  "r1136": {
   "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"
  },
  "r1137": {
   "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"
  },
  "r1138": {
   "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"
  },
  "r1139": {
   "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"
  },
  "r1140": {
   "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"
  },
  "r1141": {
   "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"
  },
  "r1142": {
   "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"
  },
  "r1143": {
   "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"
  },
  "r1144": {
   "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"
  },
  "r1145": {
   "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"
  },
  "r1146": {
   "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"
  },
  "r1147": {
   "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"
  },
  "r1148": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-15"
  },
  "r1149": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-16"
  },
  "r1150": {
   "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"
  },
  "r1151": {
   "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"
  },
  "r1152": {
   "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"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>87
<FILENAME>0000950170-25-062246-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000950170-25-062246-xbrl.zip
M4$L#!!0    (   QHEHAJ1QMZKP! %41(@ 1    :6-F:2TR,#(U,#,S,2YH
M=&WLO7M7&TFR+_KWW9^BCN?,GNYU29SO!^[NLV@,,^QM&P_@O<_<?UCY-+5;
M2$R59,-\^AM90AAL; .64 ERUJPVDJHJLR+C\8O(R(A?_L_9R:#Z$)NV'@U_
M_0M9QW^IXM"/0CU\_^M?-@^V=G?_\G]^^[=?_A="U<N=W3?5F_BQVO3C^D-\
M6;=^,&HG3:Q^.GC]<[4['-3#6/W?W_=?52]'?G(2A^,*5<?C\>G&\^<?/WY<
M#ZD>MJ/!9 QCM>M^=/*\0NCBX5M-M/G[ZJ4=QVJ#8BH0AO_30RPW,-Y@>EU)
M:OY?^!/C*[>-3L^;^OWQN/K)_USENV#LX3 .!O&\VJF'=NAK.Z@.9J.NP33]
M>K4Y&%3[^;:VVH]M;#[$L#Y]Z/$8Z $T&;:_/KLR]8]L?=2\?TZ,,<_/\C7/
MIA=MG+EF$.K+:_/'[DJ*L7P^_?':I>,;+Q732\=7+ZVO3>#JU>PYT'$,KQ9G
MUP/E__C&Y?EG9]O+R\^^N/[:^^5?9Y?69U][+LG3R$N>5WQV^7 T? ,KW]3^
MYMO"N'D^/C^-S^%"-)Q>>3FKMKYI3O &Y/G_??WJP!_'$XL^?_40/Z-^&_WZ
M^]&'Y_ #W$OY[,))B]Y;>WIY<;*MZP:X^.':Q74[XI2H;RW!](K9#=&'FZ<!
M/UQ[<H2WIC<Q <7/X]DX#MO:#2**'7$ZD6@17<>7KSMN4"9@^QWZYB$1)HB1
MRU?RZ3I]X8M."+/48';EPK,Q@ME?NW;V-I]6_/FXL<,VC9J3;I*9(4!<]94!
MX<U1.W%?)4O^\3K1S\8WO]6W1J44E 0B<O:0MAE_N<3PY75>&#=?75KS''Y]
M]MN_5;\<1QO@W^J7<3T>Q-\(1G__Y?GT[_SM21S;3KVA^,])_>'79UNC(:S?
M&!W" CRK_/33K\_&L*S/.YWQ/#_U^<5C?W&C<%ZUX_-!_/79J0U9Y6[HT[,7
M)[9Y7P\W[&0\^E_UR>FH 7X?O_@7<'Z(9QOXQ>FHK?/+;S1Q8+,F?O&LFT^H
M/\P>%^KV=&#/LSCF7W^ISS;RJ+&9_EF'$(?=GY_DM:J!@7>.;$I6&4M1HAHC
M[FE$VA.""!6"<QZ<$.E9-;0G>918;\PT_0Y8 SMX"T\:A1WXKKT@P-EX/R8@
MS1&6*O+$&-+*,,2)Y\@*RQ$+GDN1*%7>//OM[^27Y]>F=?,LO9<N44Z0BBD@
MD$.,#+8$YFNI\S9*HNW566X/8=G.MV">C1WL9CK^9SR_WPPQJ",F@4_XK6:J
ML37P*(QB@/]P(Q,RP1KX*'&B-G"O_-69;DV:YI*<_XBVV1Z&;!+O-UD$ZP82
M>:N9.N*]H90A9H-#G#,.S[8>&:HX=MYAF/;5F6["LH=NZ0?V_?VFE^R@C5^9
MW$YC?0<(IK,S7@BCA$+.2X&XT ;9*##RV"J5@C1!J=GL+A3ZQM;HY*0>YRFV
MF\.0I1-$#-!-';_@3F#L))WS*%D+C\^ZS"0>D.8F:I.<PQI>?C*LIS>\.WIW
M\!*425MO#.L!B'@SB2!FSZ]/_2NO$B-GUG-X 09*D-M$D(Z!(9J$2XX;D++T
M Z]"1#(@'Q0)!0^%5X''2QWAS2@)A&-,39K;JSAF'4\&ECE1Q$,,R'&MD0XD
M,$^LT)9\_BIOFY@B,'DX&(_\'_]E!Y,OF/LA5X,&'RSV##F8.:@2&Y$CCB,O
MK;81S(M-YAZOL-!5^$QPO=$JP.0#23ZK&(^T,1@E!O\U"M9'?;$(^_$#((RX
M#XBJ'@(K@>+NC"H JSTWJ-]WUG7[[#3Z<0R']0E<LI<.X-LV3:<RU?3D\]?V
M'GNJA4.*@N7@-G)DB"%@HK'VF@?/)-PSM=^_/KM &AMATIR#JGOVVRTUE5%*
M.Z,1L5P!;1G0EAF+DHE9IX+URO#P85[8D22TDQ99ZT"8@660U50B[I1+FH)&
ME?K'7YA00I,'JZ$%R$/P$ADF0>HL%B1B):4.CVJ%C1#12B80432;#Z*0T13
M93!"AP!@U;N'>N%HI!4"[+;T&NRB![J#7#G$?%("\Z!"9/=XX<_4D" 6/$90
M=-(0#GR4;#8*'(%E2P*#;@I*?_[&\$07F[VT=]IY"L/W!_%]9R+N98VO*J.+
M!SVK0O3U"5CI7Y_MOMFY]I8;X*"@,!JCBTNNO.EW-*[/+QI 6HR+(+X2@(:C
M&-@H8"I)#%;C+[AY]JK[L</#X"'U]%VO\W$R-"D,]A&L#*AF[ QR00!LI5XF
M Y J1?OYJU[,9_JFL*A;HW "D+7^4(>)'1QF]P,@P-L+)V"O^6LSFISN-5.$
M,([Q#3QM^]*1W/[D1]X/HWW-E?K3UG$=T_99])/L@^RE5/O8O(YYG;Y@^>?7
MO8[.? )ZB>UOO^1@PT;;^?8PKZH+/FQD%_;79RUX/X/LZ'??'3=YVMF+13./
M=?VL#>!4=8^_^LSN8SN:--VG+IBR<?'NW<)L 2S7H$5 OICA,9MGP+DV"!18
M4I:!-4TQ/9O=&COO8?:I#OESJF-3==..-SK*6[O_>=U7^/SFWV9?77_Z::>$
M9I_:L6W&&?[_-O/G,9G=]^FWRVF&*Y>R#O=?_V7V>3;(\VND^0JE: #W2FFD
M1 2()[E UED'_B&X"Y(0ZL# +9A2%R\\%8SIQP"#G9T.:E^/ISQ7A?HD\_QH
M^$F4=H=^=!(/QO#N^<Y7(]\)PN99W3[[+7,2.#%9R/[5?;V7=H?@:K_/8K/9
MMA&@M@?''F#>[O#W25L/8]N"E+EZ. W+S'C]QNE<$O=RUG==;G'[Y19S7&Y&
M 4XX\$9HL+#<$00#@S&B-"4?HR*.J+XN=W:+LCK^[WI\O#5IQ[#VS>^VK=N]
M]!;4$.C2Z<K/K@<0D%7I:Z!54X/BG]W_2!?6:4 R&/0< 3DF7"* IP$1AV,$
M?PK\:KN<A<W*/GQ]57\8UQW,"#Q=_5\6\^#U,,K/N5@UWBWP8D>Z9- K!%Q9
M[I1<.PW(**J8$!>8(@.0&"7PHCFETDH>^JIV+NW+-EB+\3F8B-/1L(O47-<V
M3;0M> 5=S""CM=%P_HIFNCLRO@$#S'ZYW^H(ZYS3L#I8@W/"&;+!@/_)F6=1
M$)7#K:N].M,%Z=;F<:I_"=ZD9Q19K$# F/#(TA"1U$%S;[E,@O9M"<'5V#@X
MM@THSE/ \L>VC6^;T?O&GEQ!<*_KP2!KR!NO6_!2+@F1&W!^!&&(,"\0>' *
M604X30<JF.9&\.C[MI1WE,;-$#KOU@[>VAK@]Y8]K<=VL%!]*>:H+YTE4?B(
ML 41X]18I'-L%O"6L1H\_Y3$BJ_00O7E-2MVL8,UAU4)GGD?<P U@ KDRB$M
MI0!/EGA%+(^)FKZNRM]B> ^H\&5LZ_?#*T[L[/?9#S%LMA?7[@*IFFYO]CL+
M=.M)O 1B?^AVG#\]>[]N_[@^%7"B8Q/;\3[,YN"C/9W7Z%O@B-?C3W-H?S^?
M.6QYP_V*2?B/R3 >?H3)G1]DX'WX<71X/)JT=ABFWV[GS)]%$J7]*^#S5Z,6
MIGBQ&/O=5OUHV![7IY\)DFV/=P:CCQ<7/D[PD9AUB8&\6>.R^#%DG% H2$*%
M(4I[WMN@PBSRT\6"IC'7J_&C4[@_ANUA;-Z?=Y'8W:&?%VOM@+,XCJ^ M<+G
MD:G?SU_;_QDU6P/;?N%F@,TYL<T?>:.X^Y #P@L(5BW&=!JJB3?6(9HD0QUB
MU118A?.H=,3"<Q;[RBJ7IG/&,[,]BBL,\^Z@NPK6)D<C!W\=?8C-\!9*>C6A
MJF$""R$X,BIOKB=MD-$V2[],B@?GK>XM5%TUP9]%/#M3\^6-?>*O:Y#NA_A+
M1,*THBAY1G+8*"'C0TX&BU$ICQE8G;[RUW> ]I3+O)^<3+KUW!L?Q[S)=]K$
MX_RHC#?R[D:&&5O3B^"[K6-8]-CN#G=LW72)*7O#3PCE$TK<:48G5Y%';+=3
MBG[\)H[WTJ$]6QES87VD,6],J9RNB'E"6@,K>*Z-LB9J$F1O&6#BVOC/2>8
M0*E70.Q7+E@\-.2WAX8<43$7"8XR 7DI$@ %08)]0I;JA%P2!DM+F6*]#?S.
MWT+\N!:^IEH?2@N#  9,#+*6Y81&$$)CN07TYK$Q%">#75_7\-5H^![\U9.7
MT7WN1A["UZ]&=K%1^CGJ0HL)!64(6#GE9!-K+'+$@[]%DK IAH!Y;W?J;QL7
M_&0/#_-!@*E3O1G^![#/HP71%LR:Q8DBJZ0!H0H4UC6*["$9 E9.$+;JT<1;
MX)S'N;0F,AE20#9)G4.2 ORCZ)$PT2L665[V%5_:!]GV[,-2>L=CSI3)?R N
MB4(Z9Z]CZ9,4)!F5>%^7\K:),YU9W!JU8_@QAD>=+F-3P +#2I*0O0OM+#)*
M1Q0%$2%:ZF"XOB[G;>)0791^NI/P@%&HI:VE88RY[%GD*!17H&^-0DSGW%R7
M-$N]C4)M?K1-^ R89L?]((['@QCV#]X]SCS$6YVK6,J:/<9T-;)*Z6J+V1UV
M7$DL"$ QGX\_4A603B(@:J-S06IN^*J&$I>*LA>T6H"H$OB["!L#/A&).BL*
M#SH""X8-$=KC%5^M_3@&L8EAVS99"%=F!\\IKJ7T$0D=86FH%$B+?'[ $@Y+
M$[3J;WK2-,=@Q_IZ -/Z+!H+% GN_!48WM@ ,IY>NS("8T7 2C+D9([,L9 /
MO$B,DK?6<N]8Q+U=E>\?X[@ N"\CZ#-?3W\=AJN'.QZES^F2$U[ XXAT!+0@
MK*?#@)1\U%SRX+WOWV&-G-2YGS>IILN7/[ZV9_7)9 ')FHM1<)XRJK/_0# %
M=\(&C"Q+$B6G0Q2.$;4"\;AOIBCLQ!";1Y^<X*GF(2F!B+,XY]&"@\A3/G@@
M0A"$2VQZF]6^:LD)+\&E&(P ]Q]&?SP<#4;OSZ?UMQZE\^JIT3@XAE*7;(\Y
M09JZ7 .&4&)"5(3T=E=Z:P1N7@[L99[*V9V_G_\>A_XXIY1]#E [-[%+);@A
M@#BWO,\[GNK;J<]BR+_$6P8H?X0T7V[:SZ;XQ<6/5(<Z3"P6*& /8%^EB #A
M ZP,46H7$A.V=]OWO3]6LB2E)3BG"G ,#QS,80P&P<(:)**(7!)! &GV;2E7
MU1PN-U=O2?P%/@HCU((5S,Z*!;AE$IA'9U2B6EBKS2,*L"TC/6%)ZZJLRP=
MD8VXR]C.-4Y(WBEC"2?MC<&]S=B^:7=E^^1T,#J/L=NP[B[H5>[L_-9-:Q(#
ME\@&37/NK$".8W!CL?3&&69IZEWPH,\AU#F>M_8F5_;""M&8!.)..J2C-<CX
MY!GCWEC3.U35I_.#?9 NRP)F3"-),IK*APU=4# 1'UED3AK'>YL3V3L7\#91
MJ\Q0L<G5OI^$N[<D6W^;XG]E5_XI%I%93*P]8*6"HQX1"OS.58S(J* 0AN\D
M.!*1A]Z>V7X%JFJV37CSEN+5*U9E]R/@Z%TN5^RZ.E+.:E@1[%#0,<%*:1%)
M[^#^K2(^_Q7;<2<S^_!'4V<IZN#)._#O\UG:*_+6/>L1NP:!"J)23KERN?QJ
M?K9Q4F8/SPO%,#%ZX6K^S@Q^]432#S&X4#:P:) 4 -^X)V9ZIC (3Y4325'7
M.P;O'7++$@<B%B9^O-<<Q.9#[>.U_7H_:;(Z'%YD(M4?0#W:85?;_$GAN"4)
MN#!1)>F1=!'G@M(*'$S&D 4+RRGQ*:;>FM4^.)B+<?N#"-'EG-?8-08 ,(TL
M$019:B@U4<=H5SA'I\>E5I<DA(X2"9((BVP2XB8I9 61R'.2D@,S1$E_\P_L
M8 J$8KQIK3]?W3=QO'WF!Y/<X^:OHU'X6 \66\QKCIESP2G,<@WOE'*/"R5R
M#0NJ$(L8YPU.YOM[K+(W>*#8XJ_SEW<F$9$0.+HI=USBX%I)X#2FB/-2:N)[
MJP;N5O%F.6>.EK.JD2IP(E1 ,1J..#<.N41"KKE,M?2!I=C_),$G5YEDCF8C
MTF0U)SAWI9&()X.1YA'\U!0E 4#'HNBM6/>OL,5RPMV12\X"CX@(97/TT2&C
MI$8B&>ED8-ZP_A\"[4FEU3[H9"Y%/AD$@%M'\'ISM2A,"9($<RXLUL;V5B2?
MLDZ>FX,=<Q\G;#0*CN1J4?EHD@<N\-@X[\ 9PZZW4/[K'M?LBF[-WP!FGK:0
MO%4JV:V'O^RE_*G*Z<.4?;UDS=_/+__\&U#2-O[X_%5.*_\L_7=VT>[P=#)N
MNROH B;SNBMKT8GD3M-5Z?+G7YG)E4O;_1SY;!92Z'5!.$9(JEP$\^=RAF^4
M"FG#<[TN):0,66?V5FDNC6F_$QX!1=U, $&=G<*-L;V,@D\%]U5M7=XLK+];
MM;7P[3?X5DL'V V<Z5Q0ARO-D8TN(*\HS\T4I>"]K<=2=/W38=/;=)=<"IL^
MNHP:N;IU+N:8OQ%M\,YZA;"P8,^9E]/.QU0+R4 Q<A%ZN[W]Q)R@/KC,-NF
M)4':,0KJ*>]&LLC ;V:Y-;8$IZEW8<P^GN]:D"Q[+%,$6^1)[@N-DT"&!X>P
M\Y$&$1,)!>/<$>/,DHE/[?!\[^,PAE=URJT])DV>[MM1?FX!YC_$M)**F(NT
M!ZW  .5BSSXY)!1@GFC "JU S?:Y5]:[]13*ENX*[!MXJ6P0'$4*\(H+XY#U
MU"+B=3[6$V-2O3U*VP?G;_F!ON];I[=-/+7UUV(X<S963]!*!&NM8!P!Q@R(
M&ZF0U01$B+)@J);.]*^P0&G6MJ2N:+>W5;?N(;<373.QS?F5CG'WZB.WH@8L
M4I;CIX@$+7+U58D<!;3FDK*.6*6(ZQU&^T[*^=^B'8R/04T?C+)UN_#T'F=F
M:8S1>!Q#+F.:JV-Z\-]SZW>KC-0NA:1T;P^?+MLO[!,**4[JTB(KR1*J<08T
M*8N1U4@'IA&5RA">C[NN0&.&!;0A+&[J([+R"5,BO!$H$4R!R2-%)I%<'#^I
MZ$CR@BWI-/<*5^193.92XLR;J!VB2K#<2). .R0P"E@X*9/$FO7V:%"ONXLL
M!Z E[A@.22."0^YNH W2-BJD:* ^12$(6_7S=\MOZ;0DI2HBIUH'A#W&B!LM
MD?9>(N6TESYXS7W_E>I<JP,7S/"8V!OXURA-4=+6@2&2%CG&#:).8I-"]#+T
MUA#U,!VP1),?Q)U+6D8>HD5$VGRRCACD.%A>XYSPD5NL:>_2&$K2R_)TG(TD
MMY2)(>\]9&[1V8XSI13ER8-U[^WV72^.;BU(B#V-B3"&"/4<<:*R#\0EXM)3
M8P+#TO<N*%T*%"]U%S%YZZ2)$2EL\HDO$I'3R2&9R_A8Y:,.O0V$+[SN_8JZ
MSA$[8G,/9$4LXE%I9"SH@Z24X9H0+?BJN\X/TC)W,0*'"2$\184D,QYQZA@"
M><-(J,0)2TFM?DAQ\46%>P"!<+:QH"%1L+GN(F!DY+Q-B/A(N&(LA?[VQGDU
M&KX'/^[D973C+]WU5:RYB%F26C*,J(D"=)[5N11?1 +^"IJJI%AO\WS['"Y<
MT&IQSS@7$7F<=]^]2,A$8Y$(Q&H50_#]/6&Q:CCUL+$AYOA@#IET'][8D^_N
M?*^H3I8J\@3^CU:&Y:P.CJRP'+'@.0!:2I5?./)9%4J90 )G"-M<IEKPA*P1
M+I^Q2Q*4)<:LM_VW2@Q^A6+PRW&!L&9,)^R0L#37EF($N<0XBDD:HVT@CC\Q
M]EY1A6Z5MT;3G)>76XXGCS3%&BEBE+""XF1ZFV3TM/3$G-G[*1;$PS8&);U!
MT>3BAEXQ9#2GB*H@G$D2TWZ>))U[2G$1L<?$U8ZR@!U'JJLH)0!S&BD4TH*[
M'%XVH9S +<G-?0M0>"VB5QJ) )S+@77!/4H*26&#\4$D358]A/Y0U=_9'$/G
M/DH60D*)IJYBK$5.Y[QS@/1)>L)HZC^J7W;H?$%+$S&3F(' D'P<"H0'.<]E
MKM@L!,=:Z_Y&]'J8]%1JH#V4HD]2\I#S]"3WB)N@<X*_119S%;RB2>G>9DST
M#OW>QK4KS6L> G.G1 F')P:?RU)*;9'!P:%DE."*,FEY;_<F>UV5>3E1,$*8
MX%XEI)@BL)PP!^VE1%C ]R+J%&)OC>MJG$*:&PXB1"2AE4.:Y;91GGDP)02\
M!Q7!W558@9GIVU*5&,[JV)-E*2"CG&;P.&$ W0/O 7\K"6#?.2>PT [W-MVW
ME!JY0TV/_Y@,X[1RQT$6MGO5\_@AHBRN DIO7 Y"N;$A8!"AW#I4T(BL81AA
MDV+(AX>DZ^V>5M_ V6*"&81'0378;ZVQSCG1"3G"+"(X!AH$QB[VSHCW++5O
MGI!*\&A\#("A'+CH1&JDE8U(A%SBRD9.E.KK:O01W"PV9;[ K!^ 62(9[R5%
M0H7<5)KDHD0ZHF0I"81C3$WJ0?K:@L1<J62$ILBS7/0TE]9R..\3<NUX;JD=
M8V_%O&=;+O,$*]8FASE%,4I0ODG$W-4^@BDT EM@2(][EY.P2J&'N2X5@!1
MCRAPD!TNDT76<8<26$NGE!*$]%^ 2M7@U3"0RXEK$T]3PMJA$#@ <V$]TH%X
M@(+8AA@Y#K&W9Z=ZN,OXE226)[RS.$\\XT7"3EFD3:!@.1TXD8!C4!),2'#U
MI>JOVU(J7)>:)'U -#X$1[7.";$<U#W@SJ["-4Z<", WV2_JFPC=JK7*?X'H
M=*V2]N$/<*X!>G9>P;MA/<Y<=*7-4O>LS8^V"8_SR!9)&%0CN+O4Z( XA^4U
MW&9_@RM#9(I,]#8:^K0@XUS!_+(S_)?%[ R<,9*0=Y$@;D"A&0:@0R:!C0J.
M1]?;7.B""0J87AJ8ICAAX3Q%)&4KD>#9+FJ)L'/>*NY)( O/_+WKR\\-!E%F
M"/71(R]S+2<G7.Y'Z!&VR7B.B1-QX6'ANVJ-BUR_J:D#=HOU!^L&\:H)>&W;
M<2Z?=/G;VPN\M/F^B1V?9A/Y>I+>_VZ'*Q,PI2QZ%U0 9R]GE;I<%H02A[ W
M/'AF)?6]394H*KYD9?=#B'A0'L0%.2G \7/!(AN50588SA060N%53WA\D I6
M/8"\-$7K%;9("-""G,F\*\$( K_.*&)$,F[5-Y >NAC9' 6-869=+E,<C;>
MJQ+8+183BL2"Z4K.2[]P[WNA6P_7$.B/\#'#1E@: T!.&W/9MH",Q JE0&7
M+AFK>YM2?W-.4&?-#N'K5R.[,M7S&/&:$P(P&/-<7-L'9!G8B!0#23%2"\/U
M=1E*UYFRS7D[)N<B<:H)XIIXQ&/,8:+<Z)'F.)&U00?=5R9?N?)HT1\/1X/1
M^_.NI\J#EO&=IR'G"<PU!US%B<AA](!TQ &1R(4/0C E>ML,]"WX6[DFW14^
MV3L9UF[2YE]69@4$41Y  F),Y7:LG"*G T6YZK:3/&KXOJ\K\,0*Z"\F:QP<
M&N>CR0A14Q!!L!R& 4@AEN04<F><[FW-B$UX0J@'D[PR!SE:T$4PML_\8!(N
M5@B6>S+N[.Y>FE4G>!N;;G_R]_.;'_ YH/ARLW/_X-VC='N9E#D*:!% 4ID=
M*X*<RXWCG+?&2A$=[>\1@BN'!':LS^&LSZ),BSU&T(?ERWU@+<BR4!*63V.!
MM*,6T92TP41K)7J7>;#T*&[)EUFV<^R,($82)(4""Y1;LUB,%:*<LX05E4:O
M*@2Y(5E[*46PY[BMQURBS"N+E(B@8Y058!U21)A''I.7WN+>FHCO[)%\[D4!
ME)MB"1"FOXY&X6,]6.QAP'GB>A\,-CQGG>7*\BIQI'7,?8X=^.'&:\)[M_NZ
M+,_JJN4F&C@9EN$6EOOB4CX7RQU]D#'D8T0R(0[0&U!XM"A)IJEW$=/4N]C)
M0@HPK"CP2IHG@D$?&@HF3)B$-"81P9*2''3G6O46>/6QQ-L<T07'VNH ]LH&
MWT4E)7+,*>1D\E%K+:CJ;?6];Y^*?AD']CR&EXW]N&K[(1P'VQTP8(EJQ'/7
M)\N]14)B;6A,!@C9UT7IC;ST(.3/B6;<:H52<K".CAID$L@:YA@;3VF@_0WY
MK\(YRSG&^3C%R89DD4Q6@1X$8V6Q2\C&8 0-1F/76STXUPI]*RIIL'P^,H>"
M4"HC#(VL]@XI!RL7+;?,]C9,>]OJ#1?KV(Z[/:T'J-Q0MI![Q^7$!9E[GZ3<
MH-='P&G>&$0PUR28F%1_N],M[C#XJJYECC2H@  B8,0#R^6((D$Z,*6)"K"X
MO<MY^8Y+.TT V!Y^J)M1MW"[P]38'*[VXTF3TU]>UNTL/SRO[GE17D](>0&?
M>Y'3["3-9P)] "=3YDUU0V D0XWH?QQ[ 4E>JQG2X2P0EKQ$24N3,X -L@S\
M5"JHITDEQWCOU%?/,X#GZ<UPK1+5$DR*)(@KDG(!=/@/PR'8?/!:],Z;>6CC
MLJ)R)WW0Q!+$0JX'1%..UUEP=(1.00KC8NQMYOU=R]0=PB-@75\#K1IP7-OB
M\CQ!U!!<DLYYE*P5N7J> $W& 35S$[5)SN'%YU\M;9>21TJUY1:10!7X"#GY
M3!F,!#5)"AV5%;V-'_8X8:4<YEX(KW)OO!'(J^CS41I &[FS9\0D:<U)Q+)W
MD.-I&H(?16(7F:#GEXE>]0<0'SN$SP\695X.^!*4>Y*$02DFB[C#";F<&VQ(
M9#X&&\ KZAN/EYA-+X1N11E>:,()]T@:!0RO>2[?BR/2B@HAK1,.]W9;I;2(
M>.!>#+<7M%MWKMB)KIG8YOQ*GXI[=:_H#4H2DBNK\E$B+D"@5'"Y92Y!TB:9
M:#3@QO<V;+;LOKE]*B=2FOC>28+FF!LEE'.4"(=RQ=4<$$A(&W [0B#Y^ZBX
M+CYQKV6GE.)9OA 9[3&7--L=L$7*&^2X YER3#AO8G+]/0E5"E%^=56MTXY[
MC(S!L*K:>Z2]BDC!:CM*/=6RH/6"UONFBQQ-$I@3=%%NKFD #6N2!%*2.FTY
MI<'UMK9>5\+Y,Y]E^^1T,#J/L=LV?L0UGH67,9D84)#6($Y%S&T;,')4,$T8
M9<GU]J1; 6)EIV1Y,0 ?M60N(4^P P_&6F2I!O 5&/5@J54*O373)5>YA(YO
MR>4I:$8X1TP;A7C2'!D9+1)1:Z>(]T3TUCP4,+I28'2.NEEB'#!E!!&5*Q&R
ME(N[<(R$<%9I3E1DO=7--X'1O P'<3P>Q+!_\.YQGK*36!I&K4 BY1)-(ACD
M1(I($FTUMD3VN!CM(R[1M"1FH"X&SP!-147 [!")C <IQM@(+FD$7G!]989^
MG6>>IU;ES!'PYI$PQH.+[SC2*O?!Q08;YJG'O'<2FO,F]G.MN^DJY(^OZV%]
M,CE9&:H+:[Q-&MFDLI^1]:("O<@!@05"F,)AX:?%[O;R<\R E\)IF^LY$Y*C
M2KGULM7@<TD;K! "".-[:\B_5:3M "@2W/DKL.FQ:1^DZ_L\65(F'3G52%.<
MVT$GC+2V''G@5:EXBLJN>@N S1#JZ6[#6UN'W>&6/:W'B\B'6TPT5EKI$[$1
M!1\TXIQ)I'-'JX!UL(YJ[F/O5FBUVM+,<[&2]9HK#X94P6*1V/4EM?E,EE>:
M,)QP;\'.BI2&FZ=)2E%[:CBB)B7$M0K(!+#,S, PAAOI^UOEOAS=*1' N_*[
M(CRR9!G"SN=,':.1XQ(FDKQR3#(356\C@(6_5H"_1(!U%Z">18[5F5P8-1";
MP22GBFC+8N_T:3E:\;7%!(?-!1J1<;D@)\[M$ .+B' 8)L3H).Y=:9,56,SE
M!.&4TC3D\\DI"G#SM!'()<.0),IB;RREK+<YF@^$=%9U8?,9)PH^85=!7<&:
M:A<(LM2"&V*3Q+&W#L>J];"9,5^WQ[:Z/6Q %2@AN4=4\!SRD1QI9@T2 1C'
M"TLBZ9V5[F5AO27991.<C]@B37-S<PXKYT+>QL<\!>P,\7;52Y$N)V(W/P$#
MDRH!_2(624 \D-P\#[PN)Z4GSE.?:.\V5SYE+^0 SN4ZW7 :X$+B7L;3)H*0
M=;\.P^;)J!G7_^H^/DZQ\P+'C)MTM!S@L([(FJ20!$QLK1.>BMYM7ZQ: 9\E
M0:C@"#4.P\BY-%.4#AGM%9A'Z<'C833UM_- KWH(+:=CK(HBD&0D$HG"\CD%
M]C!QCI(QQ  *!K^G=W[J?5V;G?HLAOQ+?""GYJ%T[03@>+>>[XY.0?5<KM?)
M-*WXMXMGP)^S!\Q^F7W.3[CA:3FU)F?9P%2 J)M W]K;EZ/!P#9ME[!S.52H
M/\"27GW$FPE<;L>CYO/9U.V(4Z(VWAV\_-9TOK@_?_DR#D<G]?"FQU[0.,^J
M_=9SKSWB^?79?YL:TV=_A;K?'_B&)UZ@@2\>>14JW'7)#EY^^;C;4?RW7^JS
MC>9*"F0UJ(=_[(\&UR4[W[ ^:MX_!WEFSQOX^7F^[EEE&]]\^^*+*YXGD#V4
M1J/Q<#2.SZKQ:#^F]M=G.V\.CY)QWM)D$-@.@3@8$&04_"4 IFL1054Q_*Q*
MS>CDXIXC*ZT&:T,0T8$A+L 6 4R4\!]&8TI)1&ZJG2,JM<9>><0"SWVGM,M@
MQ*+(->&6!L,2>_:\%S1@)GHOC0(U#QB).YN0=8";K*%<*)FHCN0Z#:B#]W3Y
MV+#$N5J15<@&D3L!:2\$#0);#3003B5A0"DI!QH'G!^&K#<YWL%=HH%0:05<
MIH6**@$Q@\@9B$1B\'$U7$8<>+]: *TH7&8\3TSS@%3D.<;)+;(2J,]$4#IY
M;B)./:%H(,!(>=M&=/V1\AO9W$+>!ID(\SH9+:Y3E-CDDF,::2 AO!P0S7'X
M:#2A'B"/CZ0CE4S.*RZ1)CX!_,FGAC+1-"/&)0DLF7Q/:" #]A:$ )%H-4B6
MRMT;!$$^3Q-S$*[P&0T<CP93J9 AS.8\*P]>F'#(1BZ35B8Z'3-7X9S]%E4^
MN(X1U\P #8A T7I #X(X">S:#QJDH*C5,E<<#\ '\(+(6"D1T]$[X8"Y[><T
MB" *#F1$2B7A#@&>J* Y6$@H9CSE]0<:A,"Y$=F&4YH3K;%!%B>/:)!:,AX\
MR"1<YG"PT2>&J"4\=T &H=)1(F5!@K''2H?,54%DA>0<4E@"X:TB.1$"%)8G
MX .SZ#@//:&HS.=R+<@_\ 1H7Y*#J1*X*E(JH^1<$NNN4S09X*24];I@G8//
M<TNY@+#GV#I'.4N9!BP V4!E RK*Z^6(1]H!+\IH%.:"@270/:$!-QC@LH)7
MD#IS%<B_ 96*),'<*,N)P_HZ#8Q4-&A018YF/@2"(!.C021HY6R,47>2107W
M$AZ*?,B)IB1X9$"A("*XB)1Y'#F#RSQVT6,M490!V(4"T9RU+'-@<HY@X%S7
M$U)%J7AN]XV\%ED*LQ468*UT/A[+"1>@0@NIIJ1B1KB\X>0#B3GU6R!ML45"
MA^Q:)T82OTXJYH01^0@K8Q'N,#'7$A$>!0[.'05UY3S)-* A.6QR\JC(^CJ
MN9*@N@@S'F0MF,1IIL'SC@CM:-+XV$X_'D<;.L\($/-O_U95O\"_53L^S^]Z
M:D-NG8C&H],-O"[JX8M_H7H8XMD&?0& &QW'7-GHXJ?3T73+XH+*'^(+-SI#
M;?TO>,*&&S4P"H)O7@"6/9T-D,#KR9?$#8)/QR].;/,>'ML-]Z+[+=F3>G#>
M;6&UU9OXL=H?G=CA[$(W&H.+"-=FUPG90?U^N#&(:9S':$_M<#;,QV-P>A!\
MX^/&:1/1Q\:>OOAL[&\-U_WV1^Q.-FP,1\/8O?W'.HR/-U(]1IWS-LS#_ON?
M (B\^.5Y'AUH>OH977W>1/GUV8F%VR]NZO[-C:::9[/ISH@L;J#I5>K-EN>"
M#&3V%G,@Z.5Z39^\+D['51A-W"#^(*WY DE]"[:BWQG^&XR5\U5B\_GK^M%@
MU&S\"7?_>_'UE_\X%14W&H2KBR3G1HYW;W8/MU]6!X>;A]L'=Z3*O86MYS0Y
MV-YZM[][N+M]4&V^>5EM_]^MOVV^^>MVM;7W^O7NP<'NWIN5)M3WF/GVA/IO
M"R9Q^'X\&JY5+]>WUBN*!3<W$N?B);/H;W#\YQ</IH1PIX3:T: .U8QD%W<T
M'7GR;+Y+\N^HI_GQWKW4T_>&7UU1W-G;?UW-J'%UAG<8[5D'XF"8+I!8^RX^
M!LXJP*9DO$48=^W'F<@XD2(&_A]U@7K* %5=!%@!6.4@.:#"R!-C@%)-]G$\
M>"S"<L3 K9,B4:J\>58-;0Z!AUAOO!SY[H!QSFCL*XD)1G^_Y+=KA/JM2/(*
M2?)-J.H'F6Q^ />GU[;YH]H;QI^O$ 3@;?7+.)]:N8FW[&0\FG% GG,> UXX
M7XX&]GPTN;AD.AS!>!V6_^)ZGW<F3MNXT<93V]AQO,XHW7W/NO%A LUL] ]U
M6W=E8,XW9@^87067A4L.Z@;DZTS^^:JO,@/FG;/R_&NW&;$N^7?O^^7YN/EB
M>A=N4V>_;US*C_#RR#71_K'1_1?E+VYZ@VL.6O;!+CYW=,]??(C-N/9V<,%:
M<-WG8G[UMBE1\S=+<-*^ 6S^<A#?CV+U;K<Z.#\!WO[+6FN'+6I!MZ6O684
MOG^DW"*G+,EG[ATRQ#D4C4]YUT$8'^9E%?X^L0UHJ,'Y?CP=-6-PX4?-B1W_
M^JR&-VZC!WD<#9P=#$9C8(YYB?8ME9=17+ZXA5UX/@[+9S"Z0 9;+*'__FYS
M_W![_]4_JOWMMWO[A]7;=_L'[S;?'%:'>Q4X(H?@;52$57O[%1$_A9^KO9WJ
M\&_;U14?Y=(_V=PZS#\3P_B-*W2I5>"/K$9O):RB9]AR?M[+SJBIQL>Q^N=,
M#*OIYGH5AR&&[Z'.[\WC*_K%">L8PPPYYQWBUGID5!!(*ALBXSY*X^>E7]YV
MK[,]S2"XIETV GR#3F"4XWP;"O8<G4?;H#CLZVJ]SI7D*D;6%K0PC+C<0RX'
MH&G,T66)'!<TU\L)(C(L<"#S6IB=N@7=]P\@^ Y\T_:5Y#D;Y7L6X!8.P^KH
MEOGAW;W]1X1S]3UQ+GWB.'?.SMR<D:Y-VMB8.Z_9V.V3$;!)Q*%$A-8R8I;;
MULXK_M' =+HMB9Y"7;ZJ4/<'5.C#@]W#_<TW![L=I.TIVNU;)'5^%FD':)I)
M>64-WF[O[^Z]K';V]VZ.L=YG[AU!0O2CZ1GMC0E@Z690#^,T<+>8=ZNN_&]>
M+[*8B1[N]7M^_9[=#<N\HCLD\R-*/J97MSD?OMJI 6&"X7*QV?B>E_2]"7P%
M-*2D,&62(<I,RJDH&AFO):+84NF=]Y+_,&C8[K+J\\M,WZ6OE,^9H.#*\^_Z
M2'W;/9G_KLGW4$A_=TUN?MT?WUT,G#-F5$ I8A 4@@6RBK.N>0F-0@?EW'P$
M93^^K]LQ .SQ&_BEK[N,NUL[U;66-6OPT:_/)X[0K_R*.>Z:;9]9/^Y6O!JE
MZM-*5[:M#DZCS^>F0E4/JWK<5EO'71SSYZ)W'DKOW(TNU]Z>K',J__R#67$+
MW*Q>[9B5N4?$ZOO1JGL-]*T0%UY7=XMQ?<DN2X]'+$85WVQ4B:<I2F&12]H@
M;L% &JTU6,G$HG218FSG8U3S^?WF],*)[8X];HTFPW%SOC4*\<OH59NO.&U&
M'_)SYK>'<BO1S>6S/]I\HO.;IO0^$[J;S]B;$-EBT<$/DNN&5._'2[.O[(':
MJ,%A](CX?$(#RUP2#3Q)KK CBC%B*)V/&!_:L]V+\^73 ASS]2AOMXM&$9.2
M<*;[):'%,"W%1[@=\.],3C5JJJ[ 7O4?DZ9N0^TS"X,GL*+NT>T<Q:N6MZ-
M\]X.+TKB_%RL6;%F2Z?9@F5_=WU__6"]NFBWV3QJ8;]FG*LWH_5E2?@CMX:R
M*)%"LD*RKY#LD0O_@SIWPGJL.?<H:0HNG7<":0?>&G&)^T %E^:'$^BGSMUF
M"$TN>SO])Q=H(P]JO(C!M,HMZ,!RO8[C9E2]'=A_V05X>?>;W_5,V:^E(XLH
M0U)(> ^NN(P4&6]%;MVA?31.,3TG5_QBF;;@S[WF</3Q88-DTV5:J:4)W.3#
M*$!7RT&0(N73FIDTERBBF'B<YK35?K$TG<^YU[QM1A_JH9_;3N*M"/)?F_T*
MCCP^;?VH@<?#AB^%M-;HA R6N2VK-,B97!:+&9F,M2D$.5?!?#MJQW;P_]6G
MW>;#@\8N,1BY?DEFP6K]=>=_NF#8G*SPM@$C4I_:0;5]%GW7QK?:2^#JQ[9$
M\8I27S[-%BP*H*ZKK*^7'M"Z2_K[0Y;/6G*EA;YPT[QSQCXEB?W[GS0EZD5;
MC>,@GA[#3=6PV_Y<JT U#R99""L+QA"P2H@;U4^+21E61G#BB$;*Y%Z>+"3D
MA)(H$<=(TDJ'^,-^3/8J-^%-Y@F0YKTP"K.'\#_G/>V?%Y1)[KS')A<?IH8
MBK;4(*L$19Z%*+V1E CSHVR1VVX,WF;.[W<FN6'P#C"'^63#]JU8W?SH]&8T
MKKI^5CY;M-4FBUJ?7_+J3SNC!EBEX_RU+CD-/M@++&Z'8?95ZLZ=5_FD/]B
M5/EC.WP? =_E>$\UL.VX:KKSF3?G$'<4R34FA^,-OBX8^_,W<H:75,EHWBQW
MT>NPAMN;SK+&!@AV.FG:2<[#'H\JN*+;O"3T)_=S]GQR38E-/UY_*$!R#^RU
MP+SIE4X<9GR=W"</F)IU>I]3\DRN?[^(U#</R>.E!SQ.ZA &\<DZ>H?U>-"=
MSHC6'T\K]<[=D7[J)&YLYZM,:QNT/[4_%PK/E\)O+DX8=3P<SZ:XH *C!@/!
M-Y\LWYU#LD5!W7E[@8%#1 S)S5L,XBDJ<(Q\0"+@&$F2S!/VHX[1K(,SH:[3
M7_=DMEL?4 9..AB/_!\/561CQ99<:I\(%[E3D<>(F\!R[:F$ &([DWB@Y,=#
M)!=*=*I#%[G>NUL[NV6=;SZ_Q#WG).\7,DH1Y](C0Q1&@22?7#(TXA^.><Q$
M>_M"BW>'@K\XL)1U_ ^=5;J=X09/Z(UM@_UG]=?!R('K>1 'X"Y5N1IL'-^%
M2[X1SBY'6^\='K^31[^D4D/S]NAWAR'G&\?*G5?^./H_JI-<F_CC<>R.6F3O
MO?ETT/HG\G-U;-LJU0/P^^U@<!$AR>& ?T[J' P8CRH7+RZ 9U[& U@^O3 M
M8W01%;@23)B)9XX4Y)]S&:,JP*^ <_.EN2MP[% OH557J+&M?H+G@2!7[00P
M67L\RJ>]9S4KQ\=V_/G</]KKL\Q3G-Y\\0X_KW71H9_H]!T=J /XW?U/%E&X
MOKL4;LJSN'A.UR2\FT0WR1PQ,K@*]KQ=OUJ597[K_,W*9G>1@6OU;/O AS=3
MZ\<#Z\88PF4*^3B=1#SPA'3"'@GEK)04V^3P?-)3MB9- ^\R+>F6L<78CN]=
MS7+>Y/U';!>PW;*0DD;]EAK>,ZEY,RJF[%ZF+*MXT.XG]7@,]J #8LUHF-'T
MX+R*N2_YM$*+]5VRSDL[MM.24I]9ND_/N!H&WY_ E1R+BT(EDVG+M.H '58_
M902B7E24T?6+*\;'=9NW'TYSP9)%V[WIA"_-66Q_+L:J)\:*2"$53> "&25R
MHSJ5?6"%C*$V:I.,HVE>%1TN63MS]H7MZHD@%V-5C%4Q5E=U.)@'6PW@S6)E
MO0=CE3?\0J>^F^RUW/AM!1- -_S0GH"-@S&:&5(%C7(")#E?RRX:/ S\FDS#
M]]7[9O1Q?#S[>1T\MMC-+,14#[L"QEUR:Y=:)5]<_/.U:5XD8%W\\]E-=[S\
MZZ_PV6W9H;M^ZU=>[K/[ZN'4A!/JNJ_("SIS6Z_ZJGW>U2[EL&[>929FW9C[
M-"LB]]P-7Z?W*J;%UADC]QE/K LA'N[]Y+H4/U;XZZZ[8H_H7,)5N?[*"5(J
M@R( Z"2@/\2YCTAS&A&)&>$%P2F;4P C>S?-%LC<^U%S?D.0O+NH4\[^XJ+%
MQLM?W6Q(5J4T_7)4?SGA\&,X;Z&^ZY.@=.'-1?'FK>BW^55]^11(69AOA10C
MOT/]D0(/"XL7BA6*%8H5BA6*%8HMFV(EGK4<]^;-37L:A:>+%E@I%^>Q4KKP
MYE*5X\'7MD6?%$D+$]Z58K?6?E_)6Q(*6^&50%(8C+CD#&F;$HHYZ389G)*8
M4]Y2Q^&_3]IZ&-MV,7V3%]4FN82UBM06BA6*%8H5BA6*%8KUDF(EK-6#12@4
M*Q0K%"L46\$(U/;-V?5/BJ"%!1\Z_F235-2*B$+(%6.BC,B)X)!@%DON6(QZ
M3CT(9OS]UXZ]MZ;<O:)QJ"]KA]SI(-8C.<O2A[=?VB&T](WC7KDN]HUGU.IT
MTUGJ[@1U#-5PU!V GK33HV+PXA%(&JI\9=N=&9L=5LZ'F/-8@_,\^,<:AH9A
MJR&\R"CO87RHVVZ#=VB'OK:#?!(@=QW/%[=C.PRV"6V5VXS7X6M%2-E/]N<;
MSVU54W5:3F_>>DI7R%4.;][]\&9[' >#F6A5/X' =(<H@7&O'#5$-QXR7(7S
M^7WCU7_ G5^CVGU)\A7P(8U),6! #@03Q)T-R"3"4/1,*D5L1A)SVOS*/'03
MYH#7/XL!7F+0WK=XX4.6<.CUH?Y/9]1[,9^B<V?G6KJCYING33VHJ%BK*,[_
MS?HV5A_S?WZP),=<8?F%HMCI2FP $+G8)A<B<0FJ@2B5"U)YC1QU 5G%%6%$
M)Q.^*&P9J" JV8BLHZ I,.7(."F1C=@+Q3 QFMQ0BZJK,MH5&3TXMDUL]R;C
M#C/!S)]5DV$]??R[H[;[]1D8(U^?@/KX]=GNFYWKNF4X.4%A-$87ESS[C>@U
M3L@:(6(FR;/W[)<H3]^M&GUZ]9EU;;[L"N.G=5G;3+*;3_5_YCS/KY!B;L5P
MO90BZ4HIAM$$W+,?])SF2- ; A.A_I!=R5_@W]E\_M4IIK,-^B(-XAD*=3,%
MX_ED_N1D^"+4[>G GF_D7[\(2*R+>MB-?]G"+G_Q/Y-V7*?SV52Z6Q%X%2].
M1U./8J.)N<#2AWCU%/HE2<_Z%01ZP&4YOMS"N9A]/1P YD0@#\U%,87K/P!1
MIU^?VO=QNJ.#;!K'9L,./MKS]N(X_]7UOA:'ZI;K$P=\L9)EP;XO1UW1_+QB
M</NLDD+^%S['YMGG8B9NH.EJE62?NW.VM5/MOCG<WG^S>;B[]V;SU1I\W%JO
M-M^\K [>_7ZP^W)W<W]W^^".I5M(SSKFS)%B?W^WN0_T>O6/:G_[[=[^8;7W
MIMK9VW]=$8S^GO^J#O^V71K*=;1ZN[V_N_>RVG[S<OME]7IS?^MO%2-3-%H8
MZK+2]>;OK[:KO9UJ:P\$\<WA767M4017K[IN*UTPZ3ZM?+2ZQTW?+UHTUW;'
M5U\8J) 7Z]=G]-F-P :PRU6GF[#U++T+V7.[.@ZBZP*3/U\?B*YSOM"M"5L=
M-]D]_!-PU/BH/KH,P1_5PZEG"'#CZU*6TH^ZSV_!'E6[Z]7.[IO--UN[FZ_
M@F>#U!GT2[&R<]P=G9+C=HMUHQY>I%;KAE[HMCU??'/Q7K2ND3VP,TMJV=UO
MXO4S9^(N-+NM5I@7%6]4"LM)#%V$+G@ZUG9A.F1W'$\JLGYGJ;@'Z>]B/OM%
M_4NL Z0^.2)'1U?03CL&/-WU^#A:)-K9N<QP.+@<L("< G+Z:*<+R"G$*VBG
MG(/I#U=?0RMTG8H%PI6K03L82JH_7QL>/PA0 6)U3?9R^9LC9P> '>)1>QSC
M^!O-IGX<I6Q=&;;Z?3IL== -6]FNAZ$_O@R%5S^]&]I)@ '#SUT-_I?1QQ,7
MF]D5O "< G"*C2[$ZROQ"L I *<?7'T585"^?AM\<U\M\1U\@^@Z(^:+"$UW
MW8,CGRO!F9Q5W\3C.&SK#_&H7NC6U#48]"E>DS,+MZY.H]H=PK3B-2 T:Q1[
M".\3J]>CKIW?=G<ZYC/XE"%304F+D4"Q$@JQ&/I"O/X3[PFCI"540^DW6R]G
M"_<:.A*WVJQ:'#H21'VY?[44;#3R?QR/!B$V[5%N_3L^7Q(F.K@RDUEOQ>UN
M0GU$1HM0?2N$C&1?ZU86Q3>?N/>"--_5N/?C(W1ASA)"6G'(_[3WR*Y&BFQ[
M?)0&HX_MT22CCV5%BF :U4Z>1A]1T!./#ZFGH.V><'SCOHJM$&]!NN$1!H=6
M4",\%?QSRR#1@N#/<H-$P]$XMD?CT=$U?/1EPO,B8=&;/(=<I.T:/BHYT \#
M;O1*J+)^N]0]-]&%>#V+ #]"?%,VOWH1FKR*+)A\H "P7)?+">ID]')$CH9V
M/&GBT>@T=P"M 40<.=O6[1&0O87)V/&BT4M%*E3]GL?,L9RWLV%A*F53:JF(
MI2BD92ND0K-R"+U DJ?,S4\0DM C@ #CIL[E[[L=IH4#$ H 9/]RS&X[J4"/
M^4,/4Z#'ZBB>0K,"/0KT>,K<_ 2A!\L[.>-<?1TPB(_UAUPSLCT:QL4'01A@
MD*V+P0&,7 Z^!N\S+FBDH)$GK8L*S0H:*6CD*7/S$T0C_&@0;1L76H:FPQX<
ML,>K;J@"-.8/- @I2&-U]$RA64$:!6D\96Y^@DA#'(7H%A_C$( S7L) !64L
M &70@C)61\<4FA6445#&4^;F)X@RY%$3/\3A).;-E='[8;WHOD<=Z)!=<D<W
M;MY7F8U;,$C!($]; Q6:%0Q2,,A3YN8GB$'448A-_:%K['Q4#]MQ,YF6,K'#
M<'0<P_NX<$"BNBC(;!+5[J=)='5(_@:3@ =5FQY^!JA2-F46 E58@2JKHZ@*
MS0I4*5#E*7/S$X0J&O!)KGE_-+9G#Y $H@&67!39/\P#%M2Q -1QAY9"1><L
M6^<4FA7445#'4^;F)X@ZS$-7N^_ AP'P<;6V_5\NJMH7$%) R--6085F!804
M$/*4N?D)@A""IRC$V3:&(_O1-F'Q 1""9R $_9['[1H0QF%;2I$M"HC<H75@
M44/+5D.%9@6(%"#RE+GY*0(1<N0F;3V,;=<6V=7#:8W4Q8.17!1UT_]S4K==
MNNHT-^1E_2&VXSH7;"W[,XM )*5EWPKIHT*S@D@*(GG*W/PT$4FT'47;H]/8
M'+7'MEE\SBK))5*W+\:MWL:F.LCC%@Q2,,C3UD"%9@6#% SRE+GY*6(0>I1L
MW1Q]L(/) V"/7!IU!\:K_BN/5S#' C#''9KT%HVS;(U3:%8P1\$<3YF;GR+F
MR+793T[J\?2X;B8A3#L.??T 9V,([ZJS7P[?;<9L79U"024%E3QMG51H5E!)
M025/F9N?(BH11VU\GS'!43U,H^;$/DA-,Y(KJ1Y,!ZYV/PU<4$A!(4];!Q6:
M%12R)!2"U]7<8<A5LT;8.KV%485;[\[>5\=!=%U@\N?K ]%USO^\2+NZ,/V]
M.XXG%5W_(31S2])/WV\5J7^):H#4)T?TZ.@(;K3OXS38$NK63]H6 ,81?#LX
M;^N%AEQ>7P[][W_2E*@7;?7R<@9=Z&7S8A;5*%4[]= .?6T'.2 3NF39[IK]
MV$X&X^Z2O=/83/-V%P*0[K+LCQ$@W:&3W@)5Y6I;_KFN2/7$8-,C(E[!3P4_
M]4L>.OS$"GZZ WYB@)_^.;'#<3V>%IJ%#X/9WQE,#4:+Q$]_OS)T!X7^_FGX
M#DD-1FT^051MNM%D7+VVS1]Q7.W7[1\%'LU??N@=3CD7>/3X+7PA7H%'!1X]
M+GC$"SRZ SSB (\R 9O1H#TZ;48^A@Q'%@F)MBZ&Z^#0V\LA"]Y9?;P#D\_#
M_?J,/BOFNYCO1VF^;\'C3\>47QJ34]N,C^KZ:-0\5/+%V\W]PVIW=[W:._S;
M]GZU^V9G;__UYN'NWIMB219@2>YP$K9XSH_?>A3B%=-;/.?'Y3F3XCG?P7,F
MX#D/XGL[F+K-,4^D/5HDXGF51YMZS-/1"M I0*?8ZD*\WA*O )T"=/HE#U.@
MLUF0SEV0CCUJZO:/HV3]>-0L%N/DS(=J9SI0@3<%WA0+78C76^(5>%/@3;_D
MH1RPN=<!F\FPB>_K%B0XAJ/6#N*LV=Y1&_VD623@>7=EZ.H@#YU/R4P[[E4'
M>?1Z7,=VK7K7QOS+1?@'OLCI$[MM.XE-]7;2^&/;?N7>@J,*CBI0H!"OM\0K
M.*K@J'[)0SEH<Z^#-B$FFP_Z'DU.1T/ 3L-ZU$PA5 =$%HFC7EX,7;V#H0'\
MY*$+!BH8J)CQ0KQ5(%[!0 4#]4L>RFF:>YVF 7+&H]:F.#Z_.%_<'?!=Z*[9
M:QBS.NC&O'JHN("> GJ*W2[$ZRWQ"N@IH*=?\M"!'E% SQU CP#0<_W8UT*Q
MSM[X.#8++[1;4$X?%%HQU#TQU(5X!>5\%^7 ']8-(OP4Z@_YFU_@W]GX_^I,
MUMD&?9$&\0R%NHD^:^\-6.C)R? %N,JG WN^D7_]@JSK LB8IW:I:_(7_S-I
MQW4ZG\VRNQ7%87AQ.FJ[VJ,;31QTE;9>N-%9IG%^30>Z)S;PZ+-%J^F[597^
M-/:WAONA%9LMR_&E[KZ8?3T<U$.8UM@VXPT[&8]>7/\!B#K]^M2^CU--CFP"
M3MZP@X_VO'WQ[/GGZWU-H+KE^L0!7ZQD6;!O+UBFJQ_8MLTK!K=?W-3]"Y]C
M\^QS,1,WT'1J<'_IA/0S!NC47+?"%]3.+YQG#/3)ER,0S='DXI+IY G&Z_C/
ML^M!B@?VM(T;;3RUC1W'&9VG:K"[[]D7T.%#W=:N'M3C\XW9 VZ"!=,!]9^O
M<L6,!!U;//_J/>H>-XGOWE,<N]5T[&1Q[.[@V,FC>'8,\CE>;/!Z^V*0XL<M
MP(_[3L.4 ME6! $4R+9B"S8OR+90ZLW47%6'O/RYA--1FO5PN%TAIV_JJ(]3
MCG&C05C, DR+0*U7.[MO-M]L[<Y6HI=SW7QU8Y&JTZ\A +-NU.<(P*SCW&'M
MZZQ Z'?F^UU9ZGCALL+%)VX 33.^Z$&R!&[HAMJHQS!3?_>Z)O]/;DRR+.:X
MY]2G?50.+JE^(\,LAA$^H9]>"M+NUDZUFV<X['23':S!1[_>'8@YF+BV#K5M
MKN9\WHYB\]&B,,UV-*@#+%LX<G8 TA./VN,8Q]](?UTN/;?VWASLO=I]N7FX
M_;+ZO><Z%-3\=G7PM^WMPX-?7//\MY_>O=E\]W(7IO[S0ZWWC_BJ\R9(=36T
MO=+A'4G7-6/W"->0=</O<]M][N'KDM]KCD_VO;X5*M,@!L[Z/]XWH\DPH L9
M2MW_YAE!6\=DGELZT\?=#,WUNNB#EKD?Y/BI'E;CX]&D!4O:KE7QS,?3<=4>
MVV;:N^0T-K-/)[!BX_;GNX73;K<.MP[9+&\=%MP;]'LEAG^4CI?N^2Q4DU<Y
M@Y9JQEHW4OH&HBR4\G.&H;?L=]CXXXJ1M8KBKU1/7QA[?V-9ICH1LSXOS!(:
MYA:%4A1*SQ7*R^CCB0/#>:%3>-$IO= I=\>EWL>X#%QZNYW<_H/2+X,#]T.I
MFP<'V?E?@!BM@ >P$H:BT+'0KM"NR._JTK'0[H% U;*"?8\65-UNQV?2-/!7
MM=FV<=QN%#DHNKB_="RT*[0K\KNZ="RT>^  U0_ IJL):.)KQQ@6A:VN)BO@
M=4/_?&TZ^$7?L-?MH)9MC[O-4Y__R%6%/]C!Y_E<MQ68>RW'DY:B.Q!T.+H5
M.5=@-^DZ ]^>CO_[P7CRCD3LQ\F,SY=OKGKBE_HL7[#3V.Z,19=+N'.4O O!
M&(,LH0SQ%!/2SF)$6$S88AH($<^J[BEGX_U\=&?KB >7I',>7ML*Q#$1R"0>
MD.8F:I.<P]H\JX;V!%YITJ+WUIYN9"VU.0SYG^U/*FISO&6;YASF_E]V,(G/
MJLFPGH[R[NC=P4N 1;"B\!3VK K1UR=VT/[Z#,&G:=[XK\_JL_'&<'*"PFB,
M+JYX]IM84T3_\OSZ^_Y6I/?:. ^H]Q8EM,60K#PYBR%Y+(8$@V> @Y8(,Z<1
M-T8AS;Q .G 7>')"X_2Y(2$B&>\E14(%E@T)05KJ"%2@)!".,35IF8:$KQF)
MBR%9K"&Y?TB_N*$]<D/W8SMN:C^.4T>T.)\%,_19ZQ2HL#RHX(@S7D6- !(H
MQ'WRR&+ND/"*&RPUY<',P^?\I)(R6KC8DIP3-"!ZC2E>L,&CE])B,%:>G(^%
M%9^LP4C26J\814'0B+CUV4^D#+EL*8@EX$>&>?B6"S48;$T+50Q&WYS)LJ?9
M0V=R"_[*$E(UT<?Z0SY!WJY5PS@N;F5!"7W6/P4E+ \E!!-83-J@R+U&G/.$
MC,0>88 )DC"!N9G+5N:F]]W9]/U+W?0FCN<+%BB3:T22@A8>O;06P['RY'PL
MK/AD#8<SDD9,);+46<0IP> JQH L,5Y0G;C5>![NY4,8#B'7#&7%</3-S2Q[
MEGUV,VUW3*DXEP4C]%GK%(RP/(P0%4T^)@?N8:2(1P)H03GP,+6)CA!#G.%S
MR9.]4$G_78^/MR8MT",VW2'*^4,%JM<8*5N8CU]HB_U8>7(^%E9\LO9#Q,2C
M<0$)+C#B JR"X3XABZ7&,BA#C)U+>NR#V0^B]9KA)4;9.U>S[&CVT-5\V\13
M6X<JGIW&80O3RB<V1UVGV>)\%O#0?SU4P,/RP(/"Q 0I)?(Q\'Q(DR"#8T36
M&.ZL,D8H,@_G\T));4]UU.8P=*VPIS5\YNQ\DC6B3<$.CUYFB_E8>7(^%E9\
MLN;#8)N22!'YD"CB!$R!4V!(F%;6:\^"EE^<M[B/[_FPYH.57<[>N9YEE[.'
MKN?NT(].8C6V9U?2:8N[^=CPPCU;)*RL=GI81/'C#2B>%N;@+BH6C$").W!9
M)4M(4^80#1( !Y7&$S</EW6JW [M6;R25C6O"/<:5CT$&??NN%%$?;5 7+%+
MA5F+79KS45)M59#:(*MDSO55"5G-+5)!4TYH$A+K>?C"B[1+<HWVL2S1T[-+
M2]F;?5"'N&\.[_VZ$1R.QG907>])4!S@QP8T>D/.%801!21<.TDJE%1:*21D
M](A;*W/ 7*)('3%*4,_%%[4,[W62= &A<4'PFJ9E:_7QBV>Q%"M/SL?"BD_6
M4GACM)!!(T\8SC4'(K)),&1ID#PJXW7Z(LQYKZ.C"[ 4W- U7&K8]<])G,,N
M:G$2[^PDOFU&IT"/\RXS-Y>6/CV!'TK5H8( >J]B"@)8'@+ E)E$I4%,RPC6
MW%KP%1U%24?.DL)&F[D4LYVII[<#.QQO#L.EAGH3YP4()%L3LGB.CU]8B]U8
M>7(^%E9\LG8C1AM%+E1GA.6(4\>0P\9V35/ =GAKF)I/4N[B[89<$[B'B3*/
M2UCOO]E86I\_I!_9);V7QN?];YR\($LU/\K>:*IZVTNYD'.9Y"Q27MBRAVSY
MZ,E9SD@]BC-2?QV-PL=Z,"B1_A[HH.($EHA-#R,VUGJL)?.(6<,0EU$C2[!&
ME&@F8PA"V2_*1-\GTC_317,[Q40%62.F!/8?OVP6,['RY'PLK/ADS800"6,:
M%;*:@IG@C"!MX2^F,!:1N^C"7!JAS]],<+VFA2AFHJ]Q_.(Q]LACG(;YZ^'8
M#M_7;A ORCB6?+$"#WJO@@H\6.(!9$.C%5(@H:U$/)'L# :)A*3$2FUX3'/I
M4K=[J9FF6Y%OXGC[S \F>2GF#1TP79.D]+9]_%);#,C*D_.QL.*3-2!&L2"2
M!V.0L$+<Z)PXYL!K=%XFQ4G2[@L#<K\*%@]G0 A94[BT$NB=YUGV*OOH>9[&
MQH[ALFH0;1LK5'7OCT8)3=I8V@D4!+$"NJ@@B.4A""ZX8R0X)$..4"NMD+.,
MH^0P99$JXBV=APMZJ:A>93VUG]]^+[UKIWAB;M"!KAE1#C$_?G$MEF/ER?E8
M6/')6@YKHDPN411## A\38Y<% (), ].8:^UF(OO^3"60ZP)5IS.WCF=9;NS
MAT[GRYABT\30M1$H+F8!"OW7/ 4H+ \H>&HD\<PCSR2XBX8X9#S3*+(DI/!2
M>A;GX6+.U-)EN>7+6/6\BF2M$5*.-C]^22U&8^7)^5A8\<D:C<AL%#$$A 4U
M8#2,14YKBY1A6A(-!B1]T>;T/M[EPHT&69.E'D;_',NRF]E#QW*O]$!_Q."@
M-/\IS7_Z S"\T-BSH!!UR2%NE4?.<(J<Q4)9[Y,E\]GX_-3W]LUHZ.?;^M:L
MZ3[FVCZ][C\]<!6*82J&J8_,6@S3'8L(&R<\LPX)&\&+I11L4K(<!4NB=PF<
MV,CGLJ^Z0,/$\!K6LABFY<MZ:4NW&I4BIVWI2CNZIX PZ#K-BB>,)OFL<.\P
MQG5&OSVM_W?OP,8="/UDX4945A$?$F*)6<2)(LA(<'$5=I0)ZRW6?G[][>;E
M^*YA)=:PT7V'&)]QX",%&<7[+;:IV*9BF^;>>S4*XI)A*%+-P<[PB!Q/'AG#
M! M6)LV^Z*=S_XYZ\[--4J[!!(MMZH-MNM$!_OI^<.F/T!,;5WS74A-]&46\
M2TWT%29GD?+"ECUDRT=/SM*/:NF[#-W]&_48'NWOL*BO=C=_WWVU>[B[?5!M
MOGE9'1SN;?WGW_9>O=S>/_CW/VE*U(MJ^^_O=@__44#<HU'OCY".A7:%=D5^
M5Y>.A78/?/"A *^'3._8FJ975:]JZ^I!/:YCZ0=:%'*?Z5AH5VA7Y'=UZ5AH
MMSKYLN4DZ1T V*U6>--[6*-Q6YW:<^L&L:34]D#Q/,X#[*N<DE32C:Y5TV>1
M,\ILSGTEB$M&D!$&(Q:,4R)Q:^E<"A7-E-/;J6[:FNO1&T+I&HS9O^2CW@AL
M27DMMJ,GY"RVX]'8#B.L$RD@ZX5'7"4#=L!%1+"D0CN7K/KB&,6]4E47:CN$
M61.4%MO1MS.9I5I1#WW,+?@K2T@U^!34+WYFP0I]5CT%(BP/(C 6$]$B(>FU
M19Q+!6#!@*MH#!>2**7E7+I]SO32?]?CXZU)"_2(S6S?\7R^@(&J-8Y[6("H
M".TCH%VQ'X45B_WX9#]D8$EQ*A$VS"%N.$,:JX@<<=$GP0./<VFX\I#V@Z\)
MC8O]Z)N_6?8T>^AO?M[KL[B=!3:LB 8JL&&)L$%P%C!AR!"F$7?@@&J!$W))
M*^:93H&F^7?X7!!@(&9-F1*@?OSB6BS'RI/SL;#BD[4<(5(NDO)(20.60]*(
MP)GT2!B/N69"2+V #I^+<C7QFJ*EPV?O7,VRM=E#5W.G'MJAC\71+'!AM?1/
M@0O+@PM.T819#$BJ$!%/5"''.$?!F5RU3UJLV3P<S0OEM%"PL":9*%CAT<MJ
M,1LK3\['PHI/UFQ@P50D4:$(+B+B04ND@V<H!9:,PD8&+^?A93Z,V2 E.-D[
M%[/L9O;0Q=STOIE$H+D=V 8\R\H.0^7B,,)EQ<TL>*'7.JC@A27B!4*--"X@
M(Q78?ID2,A3^XRS\K3!WBMEYN)G;)Z>#T7F,^W%@QS%<J=PS7]"@Q)I@/2P6
M7R3V$="N&(_"BL5X?#(>Q#(F?$R(48/!$"2%G.8$"<NY#5A3.9\<VH<R'@2+
M-:6*]>B=SUFV-?OL<_[_[+UY<QO)L2_Z51!S[1OC"*1<^R+9-X*CY1S=-Q;U
M1O(Y\?YRU#K$,0C0:$ C^=._:H"D*('2D& #K&YDA#T"L79G9?Y^N576RK=/
MML8R7VPBSWE[&NXH3A8I+(O]-QB#HAM1-R:A&_%X;H1(U,9$/'CI'(AL2S2:
M# %7 E 2DC.);^6L[Q.#3D*>/+U$JW<WP>ID%M?G=K]8 ]7S%J<Z\B0D'1M=
MX9'=:+0#D!WR!ZHB\L=G_C#!.>(+^"??MLH(YL!H$H%GI8AWE#-%'Q*&/@)_
M"#MF&OMKJPM$L?A9<2":/EZD69-NAJ#A\J0 ;+H=L"?QY4&\I)78J)E/)[&^
M$[=[Z&OL*-VC]494"6"IX12(YQ&$)!K:-#G8X*15SDN21$=S;UO4NY$,OW)'
M;CS5D3MBV)C:"EMXOZ.; SV NX(X XD*B:I&946BNF?K#W&\A, <E L.A)$!
MG"A$);2(BG+.?=C:8;+CD-W#$94::U)AW'Q\1/4H1=Z#QM*UQ<J[G:7W?KYT
MT]$M)^IAG#PT]Z,:<?;0N4#7X8N*K:")<&]!$RM 4.I+C"LS.!*RUYPD9SOI
M&MY;IQ<W="P9SMH=OHTB7?1>G$-1Q:.E"T5+2!F"!J+;3:DV,/ T1J#*<&VY
M]9&R+B+-O=&%$'9,<;1N?3'C53T6SU\_9,SX\[R55EJ<C_ $=CS!N1]R1-FA
M[-!^^RM'E%U_TO#8XM9UB]MGCRLFO\34? 6P@W$<YEHJS+4DZQ)S4H()GK='
MY[IV3[8!2G7T.GMM<^PD-5\0Z7T!I!<%C][,9Z'3?(LD;$R$P'S+X.T4*:/W
MXAR**AXM99#L:90Z0O1*@_ Y@0M"@4Z6^F2"M'KK3)N=TO/[I Q!Z5@+G-U1
M;8H>X\F*XLGOG'XW@E'Y*%Q:)X::Z#?4C$?H-SR>WV"I"3H:!R6J3"!<BN"R
MH,!I(H1+[IW?VG?=X5EXG;L05+(Q909=B,&;++)'[\4Y%%4\6O8005(2-(/D
M$P-!K8#""PHL$[SP@'#";R4J.SP/;P_L(<<6S[FI+P#%@F:% >@WS\3#\!,=
MB/Z@$3H0C^A D.(B,):!2T] !,+!>I4+(UMGBSN@.>MDT,:M1QUU[SZ0L;28
MOAZ^O2)U]%Z<0U'%HZ4.)E3TLM" \*8]7#4$\#)3T)P&YBPSQ.WOE+SNJ8..
MF:IPZ,6P[!4KGX,(/->#9T;3ZWY:G PY8(\!!V[AP*UZO Y#3,PL)+#)^^)U
MQ.)!9)E >^&EC-Y:V<G4C*]G:W7?GFO'EE=8)SV^*5L5!!'(3LA.-2HKLM-]
M-XZP2'/2()(H@;$RII!,>ZB"I5X%;ZG-#SI%X7#LU![B5V$=]OC8"6= ]F.>
MQV8&),Y^'+"O48TX>^A)H)]PTT^(,G%GJ0*N79L[CQJLX;;\AWK""-$JD8YG
M/W:5)Q]3HL:,XQROX9LG,D7OQ3D453Q:IO Z4D.( .%\;"-*"3YF R0X(0KJ
M"TM-QV,?.V,*8OC86)Q \!@1(HYYK)YQ,*ZK<N[;7:FF.\G>RC75JB6*$R?K
MH96C6AZ7.'=/P_?/W^HLB/JFRWM#%[YZ&9H48/(1SHKSDV9/7_W#!BFMEAI\
M4!*$-!9<D@0"<5KGJ&S4^G>_)"7!71#EHSR4*,KE$A&E$ANQ+'T;0PD1\V'+
M!<_GY^>3Y7GY8W/4\O/R2OE0FH5V_]:/;^;+-*+B3]>Z>.L_Z&PB#56.FTA#
M/18G6CFJ985J.7AQ8D:O9@A!)POAMRZ\0/CML3C1RE$M*U3+P8OSF#)Z?6ZL
M?;><AW^>E<^D1?.__Y=A5#\;O?S7:K+\A*?E#0>]!RA'E!W*#NVWOW)$V>&,
MCXYG?.RULGI7-^R&=MU]P=\N4DZ+16H7H?ACX]&%6XP^N.DJC?YPI0:/W"J;
MVD/0-1.0B>0@J"=@B0Y@=:#9!ZHEZ613Q;4HUI[I6[<X7;Q;NF6*_]6*XVU:
MO#MSB_1E%VUYV+Z_O*LYS2?G:5'4[L5\.G6+YO+=GSMK7[]Y]:U;)()':B(!
MQ4P$H84&&UGYCV5<>Y]B\KJ+;N"#W.(30FX;N/2-9N&#:?JS427Z'%DV(G,*
M(O)V-B-+8'+(P)1Q5*:BY=1VK\_KM6I.5LNS^:+<;OQBD9OUBU^OY/?[P+^A
MR4H1D4RY+Z*+5L8LP%NKP&@2J/ \4;%U<P_7Y,YO3H[+\K?_KU"1-QR]N:N1
MN[[G:O3;"*8))QQ,M*XL9X@%QP0%ZG/VSGH=4B>G+-ZF J^;9G7OY6_;BEH5
M:/V2)LV^.5.5$LJT8)"5:8VWZ*JWWH/26;A4;HZH/8!TE_?5+F:U"CU9WR+N
MKJX@#L)-.;AG[KY[YGZW5=-SYT6VQ1/(K*!G*C&A:.>H1!IYH$X6YV?7R.>.
MBVH89<\>WG*)UE&S=2!0]UZ<0U'%?@(UBR$Z$HIS6_ 9!',)//4"@G+&)<*8
MRQ:!NN?6@2<%#3&9VVX^F<]JSN0ZEFDFD(D3!5H4 2^C :V%=5'+2%DGF8&-
M' Z?QI7:<9>T;%,=;69/6O#)<M L,!*R=.5&NL@0[/_^,(?[?4U6)B:5$H$D
MBA(+Z0LHQF0@"V$EM\P3SCO6Y ,E<(,BS%&GP.IH07#5GAPD,V@::+G-+&U@
M'>MPYW>F":9O=U;M+!EU7+.RA"R6Q>3MV9-$@;=&.%)4/<FN0?H!.<[MQ6=B
MS D;&_;M,:<'7NMV'V@EB^MS<IHX![%8.0BK9%GF8N>$$4=#RI)OCUGOQ+J[
M6UQJU-@J5LOB7AKR)GL]<LO1W]PBG(TX'8\887*]"?A%"NG<I\75LV(\*I^Y
M2.7"/Z3IIVI,WZ<HE0D,E!0%^Z5CQ8P+]H<DM,JIZ$[:&DK5B>F?KI;-LDBJ
M7/>#582:<?$LQ\RB_6^OL!7,6U(62AE=@GM%#93 J:QPL6J7.8W2[H?=.UYA
MI=H5_O:PRL<!@?GGF]P-";#ZA4G5FM-&F%1]Q.0)LX)(8B RDT%H6Z!;1P-$
M&6FC("ZS3D[(N0'=ZXS"G<=&%N<,1T(.WOZ0"GHOSJ&HXM%2@?6N!&A: :>Y
MP+K(&EPV!K1(,5E"K0V='$>#5%"O_>%VC$$<N7I2;KHU#S<=7;A)+'<S"NYB
MLG13C 71 :@9@- !>#P'@%DJ?)NW5RD5,F>^.  E"H1@>;342F>Z*3]^1J>W
M!9Q>SYYOH.F&7]#1H0)"Z+$2%IV&P=LLTD?OQ3D453Q>^B"T@"UQ$(T0(+PI
M5&"$ 16==L%*27DGF_0.2!]\+!1'^J@MYCR>KM$>Q9R_I*6;S%(<);=^-QYI
MBKY"U;B#OL(C3BL03 4F!1!J"0@7&3B:)! M1# \.&<[*3M>@=++2TPZ"6%U
MOIJVC<TO4IZ$25='H!MKQT3>UMV,-CLLFT7ZZ+TXAZ**1TL?B9(D*+40:2JA
MIN04K& 2LE<\"FUIU)V$FH>C#RW&6G^[_1AM%LN;N$'Q&PO^OJQ(LUI\NMJB
M6$E7M$J..64UJ!0R"*IB 2DC0'(?7%"&<;K5%;V+CWMU^^O4UV46[++_^<'S
MJHQ68\FKZ8BNJ.<]<2(#L0)2B5E*!!,DN$P"4.V$8CIX&F47%+3/U96,C-5W
M6.=Q^MVQQQVCA9K$B=%"E]'"7G'DQTK(H40A1HK$P&?N08ADP7@50'C.9;0D
M2-U)>NL+<KA?,^7WN8%+.^968SQR1X_V[@KSIUKA 9FJ]^)$ID*FNF\AQHG
MB&>093M<AL4$QN@2QF098Q3M]MVMS=D/#F,Z9:H2PQ")&P,.Q538K3&(;HT;
MF>S1?'E6XNHP/R_?<Y9F30FH1]-Y@PT<@_-4?#&YM+A^II78J)E/)W%TI5;5
M"+R'OLR.TD5OYV#>3N#941\,)!\=B)0T6-+.(\V96[J>590ZV>'P&5U/6W!]
M?A-;7\\*U*:?"\"^2<O3_-Y]O+LKU)3U*X_N,*Q&5KCMX3L&LG$2"*\'@##
M1]I$VD3:1-K\AZ+<&)8L4$(S""$<>-?RH-;>\T*@F7=2ZWQLVI1C+1329D6T
M^2@-.P?-+M26/=CMV.WW\Z6;CKY]^#:F$M G0I_H2'RB1_!0O$_!T"A*5-Z>
M$LF%!Q>L!4-MCEXR2FPGI[G>1+@-LG54QK#*C(M_A,['L5EZ-;)#6D)E15KJ
MEI9(2%$':2!K&D&H4&@I\O:1(2*R0$+LY'#7_=&289A*KL/2'Z7PCJ'PCJ'P
MSQ/G)]/)<M(VM,\BAL9'ZX.P)ZP%ISA?^6FJSPO9-5_WA^K<D7L(^F@=$AD]
M<2DYD+1$QZ(]KL<$(X#Q$%WTAG CNHB3;\#?R2SNS3UA8Z+EF-CJX^:O='.@
M+@I&SLA:R%K(6IW7GV70T0<*GF4%(H8$3A?JDM*KY*D+D74RF?YPK*74F,L*
M)PL>(VM=!];E@2LW>B>;LE>-'/>_D<^VNW,CR?IJOO?SF[>VW_RTG8TY"?<)
M8,_2R(6V'=S-/I5WCV;S91O%+LK3Q2++VWY=K ?++Y:C>1XMSU*36N-;IU_6
M#>5Y,G.S,"EO:MK3@<_+]S9/OI!]G'QH1?Z7\N^5 /Z][JC_^)0]R]/T$>)D
MD=9&\;1(9G4^>Q8GS<74?7K:OKJEND]DT<#VABX3(ILG_F?5+"?YT]6]K3\*
M:1:?7<R;]0C1IXLT=>T&\J+X'UO1ML*YMH&/=\17RGJ@#'=:>G'K(IU=IYLN
M;V0RFTYFY8J6106>NM5R_NS+%XJ(-T]?N%_3)O4$+I?[?.JFO[E/S;,?_OSU
MZG\);.WB?=:'K77M=OD.Y MVO5:W(-I-JPI3US3MBI6/7WYH_6\[SVCQP]=&
M)V^1Z9ZE]S#-W\K-=2W>U\]?C5ZW5SASFV'#X_)G>+))YJU\,XD3MRB.PLT%
M.(2XUB[13;3]QV>,_<<7>WC^,9G5*MSGIV_>G?[\^L7)^Y<O1N_>EW_^]O+-
M^W>CTU>CYZ=_>\CXD;U?^MM?7O[GRS?O7O_7R]'K-^5B7QY: 2J5RX]_?W/R
M]Q>ORX+^Z5 2J0Q_UR[DVH.\;>?@F@\ON:F]O/;[R]VT;X?BULQ7EV_9_!0E
MQ:O^X]7[RR)/W463GC:I>%W%VJ^DLG' UY_[8:LV]&'23-;AS*>G5U]P6]5G
M\X.2/;&4_O$FD5ZQQII)__RM#[(G0NWPL5U^BMHGQ(@#_=@P[NM[14/[W:+A
M;7;TD$KB0?)\=HA9/I3<]R57%+=]Z:\_J!\.)\5;;GF/4NV8^^^8!EBD-/I;
M^?NL&;TL44*L0'EK$/O^U!G1NB^8@Y*K%:T?WJ(X4#R_GJEY6*W>N5&OAA5!
MJ.^H;6R?@'7G9/ENY9 ?)[/1\FR^:MPL-N-1^AA24>&+5%;M;%T3.2^KM&QV
MVO:/9'%'LF!(%@<EBW;L,O)$!3R! (( TE, $0@@%0#(_1W-4$250Q^WC=3@
M9=[QK,P/:;9*%30C5B+=8;305B+,/C?']J+QU1YH]RA7Q.1D(0060;3_\4EX
M"#+S%+,3(6ZUO1*ED\B<@]&6@Z!!@)-. (]!*)D9T^&60S+7:/1J,3]_7KZL
MO8C_GBS/GJ^:(IBT>/DQ3%?MHIPT32K_B_<:O?3]$[:-'BM:X>Z-2BQYV+LR
MD%!Z(DPDE&$02G!)&L,T<*,U"&TM6);;C1',B7;:/Q'Q:T(QQ$3.8V$0*U*[
MCR* =5%"Y%D[KJ/(Z99C,Q^-4*P8"U[A#+]*+/F1:Q<84NXMI'RQWB\Q>CYO
MEH<;W%^]OJ,;4!MX5*"&1\K^D@OJ) \0C-?MB:4)G/(6O"&.,B&),EOGT>X2
M3K80=)K_8SZ/ZUV4:?%A$E+S;CZ-71WY0]A8BGX?EHUV6J/DD"Y0#9$N+D>J
M9A^2TA($4[;01;10XCT%7/)H:-!9RZV3X78)%O=/%Y2,):]PL_V0['3W,N.A
M^]F.*"8\O4@+MRQO*V9:PL+UWM7T\2+-FM0\Q7:3_K6;/(B?NI+KK?0TE XH
M%";:-]KW<%5RX,)\E-1\3T[G[8W;]GJV&7ZT]M>:-)VV'MR5WU9KE#PXK,<@
M$),UO4G6:)*DERZ!9<R"D** N3/ESR"5L(8Y:[?F^NZ2VW^W0:/_2+,264Y/
M9O$DE@N=-,O%>F;4RPU(=92XH9R.C:68N!FXS2)U]%J80U'#(Z4.9J)SS'!P
M*3$0EBJPDCI@M#SKJ?:&VB[R_(>E#F;'Q JDCCIS_AAL5A-LODCE0V&R'G*Y
M#CC=^;S(ZM_K)VJ%:O08=A-FIZ?C58]/>#9>Q5Y'4EY'TIXA3R@(ES5X8@/D
MXG\8FC5-/G41L-Z$M];GN %N7;D:8JRMK,_3Z/B$/+1VI"6DI?XI*M+2/8-A
M;@S10-LX6.A"-CX)"=HYI94P,67>13!\ %KB8Z.0EA[=VG&S5(5![^:,UOEW
MVN,J0.Y*!(\N1O] !UV,>ET,'0PUHO@4R20/PC &QJ<2 U-/A*!:1]_)5(_K
MYM_+S'K36;RKQLI4N,7ZV#P+9"-D(U149*.'C02A7B1O-)0HM02\3B4PI)"3
MIU%IHC4+:8N-=@EX]\=&;&RE139Z;"/'.9,5QKF?-X!-9F%^C@,G!^9'5"+,
M'GH)Z /<2'H'I;+3%CBQA<^9)6!8DA"DDH0[6_[G.HU(7Z_!Z.=YTY47P,V8
M6U*?$X#VV7/)(4V@&B)-;&C"!)F],P&8"P:$#!*,5P:L-T$(1I/MIE%X?S0A
MR-@*; JN+ [$>N<!=I06E$K-<CR:I66ML(KLWFMA(KMWR>YW/M3N:EGO+OX?
MKR3_N(EG'HR@RH)Q3A5O(BMPFC(0D=D8J)6TFP;@*^C;.!.7V><W:7EWEZ(I
MBU0>_8YOH<><:W0M[L1F=]>=G4Y51+)"LD*R0K+JCJQBC(H12D"REJ)$3& U
MIQ \E=X&18DC782^AR(K,V8<3]TY#%EA8;3"@/AT>986HQ\ONWW_A.7103H;
MV&:%;5;'Z; 0;F242H&QW((PJC")30*H3<0DQ4L@O96KWZFDV^+HF_EL_F7.
M_M[#/.[FMM QD14>^]"C5B^,PY$:D1J1&BLJ*[OH7*#)@"UQ-8B@2VQ-E 3A
M$Z6%DV(6G6RY[8JJ?H>A%*^P#ZE'#(5%Z(JXKN,B=&MO(Y^*!:7+B'NT=!]Q
ML^W0G(M*A-E#UP$=@QM)=QXH5X*"B$*5>-0E,)PS*$^IE)EBCG2R4?9SF]G5
M@<63V:I<\V4?VGS6_+2&K,W[WK> ]?+C<N$*,TQF;O'I]3*=-\6Q:*]D,5\/
MN;S*XW=VX.&8$)R#/'0[1[KIM3"'HH9'2C?*AZREC,!38"7ZI Z\B1&D\UI(
M[PT+6[M@=JOQ5D\W8LQYA0,>AF3G6!6N,$)]NYA_F#0M)!3[P AUP"X#IK\Q
M_5V'VY%]I"([#MH1T4:L'&RP&GS6R0L7J%6=;+Z]=B<N$]X_I5DJU]>5RS"F
M$O/>1V;HE4@.&0D5%1FI.T:R,C&A?03-<@8AJ0$7I 'OK-(^$96-[RX0WA<C
MZ3&A.!;JT0T=*[$5QKEOTA([GH_ BV!/6(LO<;[RTU2;'[%K*^(?*M#9G<5\
MI"Y%\2:\"E* E(H6]\ R\#I:8)K($L-:K6DGQ],68.M\: A38R,K++Y^5P<'
MZ4L@+R$O(2\A+W7'2VV@&YB)P!PK82O7$KP1#@AESEM&K=J>?+A+J+L77M)C
M3BN<.'%\O+1[+?<VG7Y(X(LQ[O5ZC78Q!/06ON\ME!5J7_KK#^R'PTGQKMS4
ME5QOI:9'<\-0F/4*$^T;5;(RE1RX,'<O)W3M:JUE,)G%<LF;J&A?OM>E\-=?
M2Y\8R?_XQ6^39SUTSEZZ]9N:T45:C-Z=N45Z6H'M()PC B&<#U>8:-^HDI6I
MY,"%^2B['&YZ1ZSUS [:#G+37>-/--$#<-=^<LTD5%#>. Y4KR%/CR4Y+,D]
M4DE.D12,5T"DEB!$8&"<39!,R,($96GH9'+=50CZ-BW6 >@:X[XLS96'*;Y;
MNF5J3O/)>5J4!7\QGT[=HEE_Y+IP1VX6[MCOC0AZ(B16[1Z_:H?4A=2%U(74
MU>%6/A*TE(1 9M* ,-R";W?V\4@9XS&Z0E]==),\)G55.!;@^*CK43958%C=
M=5C]8C)=%3.M .DK,0[T3M [0>]D7\>W)NFM(0%XHA8$#PD,(0Z(*DX'4;0=
M-["/P/H2Y0[DGU1XNNOQ^2=(7DA>2%Y(7AW.@A5**TT]V*A+F$Q] B^-:H?F
M1.MT4DQLS8+M(K1&\CHZ\L+='!6&RKB; ]N'>M'Q@NU#O14FVC>J9&4J.7!A
MXFZ.0>SF^._UBJ4(K@C)_9HV.SH:W-*!F-X+&$),[ZTPT;Y1)2M3R8$+$[=T
M#*+W!+=TU $^QUJ\ZV&=&6MV]ZO949(%=<2!4;H]V<)0<"XH4#EX$101275R
M?N-5^'FRB3[?K,Y]6ISF31!ZNEHV2S=K%V6[3;99OV77HY[-6!)LASTZ&*A$
M<LA8J*K(6-TR%N$R>BT9<)8*^VCGP">F0<N0?!2,Q1"[Z#)Y/,;2$B>&5@ #
MN(%C$$$T;N! IV0 :(1.2<U.B9.:2:$-^&Q=<4I$+DY)]$"RRDQG+U@(>PRC
M+S%NRS?IU"U1E*-;<FQ 4(GDD+-059&S.N:L8+TB08$Q)886B7%P-EK(*@HN
MO2 R='*NQF-REL59"#4  6[7J# PQNT:V!K4BVX6; WJK3#1OE$E*U/)@0OS
MT:L6]%&K%D/9KO'<-6>C./DP*;<0FS;JF99(**[/X@CS\_,2Q:UCHPKB[N,
M_AIBP[I21#C:XXAR191ZF:P#;J0'P=NIF90F2,$*SW)DQ'0R\/GY&MK>+>?A
MGR^NP.]ZS,<E!AYBS@=Y0G'.1P6)(V0R9#)D,F2R[IA,Z4R<(Q&TD *$]ZSP
M4RZL9(QCGF<5$^NBZH%,ADR&)9#*HVPL@6"*M!=9/4R1]E:8:-^HDI6IY,"%
M^2@ED(-6/'KH:ITNSS:EB_+9LS1K)A_2Z,?IO&G^-)K,RM-I/)JEY6B>1TOW
ML8*XNI(U&&(NB#QIH[UF/IW$VC)!/4Q:[BC;.M(_=X68ZX6_^P+]>+4VCYIN
M(M)YQF(&FY4'D5W[B%E0W- LN$Z!=S)?80VOSV^BZ^LUJOY<$/9-6I[F]^[C
MV_FBO;*3Y7(Q\:NE\]/T?O[6+<KU?YF)>O?BVQVW35G+\NAWLDYLK.O?+?*%
MK=26=-HU)_VG"B"I$A$B=R)W#I@[#\YE,HO4UCH@>:% 2$K >2(@I.!#3C(*
MY[LHG1R,R[Y+8<I47S>IFL >N6J"H?S^>A._".(Q>C\N#P0[.;"3HPIWA"C)
MF*>B1-4YM&&R F\D@:R",;'X*%IOG>2]8T_BUY[(E1?2D:O!Q)AR4[NW<0Q=
M&LA2R%+(4LA2W;$4<XG[J#-P6N)E064 QX,!DU)RP5*5$^FHWW#?+&7&A%!D
MJ<=GJ>NHN#QH,Q_[M://UGHWTOBR5O.-WWN(' Y_L_<J4ZVOY7?O??W-3R?+
M\K/A'M)X?Y9&+K1E=#?[5-X]FLV7Y<O=HCQ=(*>\[=>%FXXNW&(3C9^E)K7H
MLDX2N66*HSR9N5F8E#<U;:_Q>?G>YLD7:A8G'UKM^DOY]TH _UYOIOSXE#W+
MT_01XF21UM;_M$AF=3Y[%B?-Q=1]>MJ^NF6C3V0QM?:&+A,WFR?^9]4L)_G3
MU;VM/PII%I]=S)O)^KL7:>J6!<V*A7]L1=L*Y]K8/]Z1/BC[G=6H01GNM/3R
MUD4ZNTZ+7=[(9#:=S,H5+8L*/'6KY?S9ER\4$6^>OG"_IDV*#%PN]_G437]S
MGYIG/_SYZ]7_$L';Q?NL#UOKVNWR'<C1[7JM;@'OFU85IJYIVA4K'[_\T/K?
M\G=:_/"UT<E;9+IGZ3U,\W_;Z(.?3^-^Q/OZ^:O1Z_8*9ZX5BYN.RY_A28'
M.'JW\LTD3MQBDII^L,;>Q?7\],V[TY]?OSAY__+%Z-W[\L_?7KYY_VYT^JK\
M=?K\__G/TY]?O/SEW?_^7X91_6ST\O_]^^OW_]]M[1/5W-'HT"N[]N9O\N@_
MFG9KSUFYP[1H_I'^M9HL/]6Z_C_^_<W)WZM>SQ>OBVK^Z7'-]3'9X9B8\(CN
M=1VCK4.TKYRT=92[]L(N/:+V\MKO+W?3OAV*,SU?7;YE\U.4E*#UCU?O#^W&
MP(LF/6U2\?4+(%U)91/?KC_WPU;E],.DF?C)M$#5TZLON*TFNOE!9I\(I?YX
MTWV[\E76_MN?O_5!>J#/J"?$'.JW#O49^42IFJ\/[^GJGIBH^?K0GH:K>^J)
M8#5?WV[KI/=T3]]K(3('/;_^((5",\1"(4KNCELRU7ZV9#Z\3_9**'N4>\=)
MF+NVPK6C^-9C/@ZKV#MW@M:P* @DM0/)(^WM'BA,G)2[WB2J_^(7?_X_;]TD
MPF16@0+7('H$ P2#NC1ROV#P2UK7^78ZD7" PD;SK]W\,:@X+$"\7R37K!:?
M,*Q *!D8E* GT6E8$<+J?#5MVQ'6<<5ZX^SZT1?=P!5H= UK@>B Z( :B;+L
M<@]Z706D\TF,TU0QD-RY=7JWYO@?)[/1\FR^:MPL-CL-PD&H?ERHQICP&PNS
M.2878\$*^  A!"&DCQ!R<EY\E"5""$((0@A"R&[M+NZB=<H10Q!#$$,00W;"
MD)=N_2:,91!$$$001# =@A""$((0@ND0A!"$$(20/D%(.Y > 00!! $$ 62W
M3M\Y9E/K0)#[-_F$D-)CG!E9/5CMUV1^<E,W"VGDEJ/_ZV8KM_@THN,1(TSN
M8D?#7(%A#/2N1)B'EMN^U+"V^=OF,/.W?3)*V=R.WJ84A& >C)(:#&4^V.Q8
M:$]\^&K^MG<TR9" N)A ,.O*VW, %J)U1F6;L_QZ_O8F(_FZ:58I?C%PNUF_
ML./,;6K&2JGZ9FZC;?9<<D@1>_-X[B[%&LYS0*[XS!7<A)@%H9!#<" "$^"(
M"Y"EL-JRJ%22G7#%C=&Q+S>38[LZ2 BI JD"J:)>82)5#(,J&./,Y1)6N,!B
M>T1/*E2A'201$]%!"N^VCO51*ILDF '#B :ARJ>-<0*"DDYID9-VZ6!4(00?
M"U7A&>V5&"KR!?)%!<)$OA@&7V02HXO40C22@O E0G#4ZD(?5BN2'*':?<T7
M/!N1*5$@+&,@I,U@6J)1*5+!?!1&TX/QA=%BK#5#OD"^0+ZH5YA#4<,CI0G'
MJ$JB! :!<0,BNA)@D*C *AJM(I(+';ZFB9R(IRXR\)HZ$$D;L"X(R%I;82@U
M4FR=:7TU8FQ-%YLAQN\NZQ1=E2[D6#*"=#%P.T6ZZ+4P,;S8"V_<ZXA0<W7^
MU-UFW-QVCMO!>2K%F%0B"8*(MN4<"D9'#L%SP;+)Q&C>!4\]))QIRO*41[]#
M4YR1,9%8-^D:(78:OX2,A8R%C(6,M8_:OK"$4=$2#]4@0A)@E/ @K3%>..F5
MWNH#\T*7F(M&<"%Z$$Q',%E&8"YY'Y415O##,Q:58RVP)PP)"PFK#\)$PAI&
M:DYK29S3'FC( @1E"7S4 50,08L84O1;!$)EMB$H!K(-C@2A)4Q2)A49,!JI
M((39?+ *CC5L+*1%XMAG2F[W8<&XCVA'E_0>2_8F+4>369B?[S03?YAB1K*O
M#4,J4,.[<GQ7LGQ03'I'>1M&&2KJP!05\;+7PAR*&B)>HJ+V0E$1+WLMS*&H
M(>(E*FHO%!7QLM?"'(H:'FG./>GL6&0,M \)A# )O"8,1([6FYBC,5N[)@BE
MM-U+!XK; ()Y#B9[ E)G07G.6O*M71-OTO+U.BW83O3K:B^V&AM),=L^<,M$
M@NBU,(>BANA0HZ+V0E$1+WLMS*&H(>(E*FHO%!7QLM?"'(H:(EZBHO9"41$O
M>RW,H:CAD29LLU#6L2Q!.Y5!L*C I^ @>NT5,UD:M]4D391.(G,.1EL.@@8!
M3CH!/ :A9&9,AZU]H9BP[:=EXC$+-;='GR[/TJ)8YWGYAK,T:R8?TFBZXQE'
MPQ0Z<GUMB%*!&F)LA(K:"T5%O.RU,(>BAHB7J*B]4%3$RUX+<RAJB'B)BMH+
M146\[+4PAZ*&B)>HJ+U05,3+7@MS*&J(>(F*V@M%1;SLM3"'HH:(EZBHO5!4
MQ,M>"W,H:EA'+]S@)UP3;S2UVH*SPH PBH/A@0+WU'*ILM-6;9W)(#PG,1N@
M),;R&6/!N*1!L\A"3E)2OM5[M^X2>GZS2>AS*]Z;M#S-[]W'M_-%>V4GR^5B
MXE=+YZ?I_?RM6Y3K[WH<-AMKBL>8WJU+[.XJAM.PD=.0TY#3'IG3J$W:,IL@
M&L-!<*; &<O T<2E#)GSX+OH)T=.ZQ&&=,MI.+&[YI;TS03\=4]ZL4O7VD&M
ME(">2:^%>6R>"68G45$1+Q$OCUT-$2]147NAJ(B7O1;F4-2PCLS7P3-1EAB6
ME!#@D\T@LN3@E!)MDDEJQDP4GFUEHG)F5# !,20'0AD'ED0/V6HI-./*"?=U
M)NHD_L^J69Z72VG>ST^*_-MK<-.W;A)?SYZ[B\G23=^=N47RKDGQ^8VX^)=4
M8N6FW/J[M/@P">EM6DSF\9<4YK_.UM_R7VZZ2AT-2Q!C:O ,TJ';.E).KX4Y
M%#5$%QT5M1>*BGC9:V$.10T1+U%1>Z&HB)>]%N90U!#Q$A6U%XJ*>-EK80Y%
M#1$O45%[H:B(E[T6YE#4\$A+9E1$[R5Q$"+1()QA8"1SD(+6*0=&N:9=-&]C
MR0QM'<>+U]_+_;II5FX6TFB>1TUKC\WH8K5HGUN.EO/1A]0LRS>UKY:7EHM)
M6*96[O/PS[4!XAAR]#*J19X*U/!(O0S"#%.64- L>!!,2C!)28C$6V]LB$S+
MK[T,HZ3SWAM(FK1;I04'%ZV%\B#P)*FF9JLQYUT+1"V$I?ABM2@7NW$6UHY%
M\\LU8*W?=O*;6\3UOK%7\T5.D^6JO.<+-V*#?SMZ$I2B'S%T:T92Z;4PAZ*&
MF.I#1>V%HB)>]EJ80U%#Q$M4U%XH*N)EKX4Y%#5$O$1%[86B(E[V6IA#44/$
M2U347B@JXF6OA3D4-42\1$7MA:(B7O9:F$-10\1+5-1>*"KB9:^%.10U1+Q$
M1=U'7S+.F#Y<7_);]VF]>:!MNMLT)H\6Z6*U"&>N2=AUC 18+:Y4H(9U=!T/
M_B ,;V-2E 3@60@0*0LPT7/01*8HF(LBBX=T.4]"GCR] L)7\\6ZK?F7SRCX
M[K)?N:L69BZQA?EN%'=WS<$SFY"JD*HP5D-%[;FB(E[V6IA#44/$2U347B@J
MXF6OA3D4-42\1$7MA:(B7O9:F$-1PSI2QP=/Y3*2J93)00[2M*G< "X'"XII
MFKGD+LBML5A,1!U$#."5%"!\=."2MN"D%5P3*35)>TSEWNW48LSI#M]FD3IZ
M+<RAJ&$=U#'XJJ-+2@1#"+!D,@C#-=A4_E3!<,N(C91NS5;JDJJZ'+_([9@+
MC@2%14=DJAX(\]B8"I-"J*B(EXB7QZZ&Z-D?Q+-7T<2LE089,@$1#04?I (K
M@H[41$^B?LAL=O3LJT&&;CU['+%>\U:&%Y,/DYAFL6GM9UI,+M:*\^AN["9,
M7ZPF+:Z?>2(OEJ-F/IW$T94B52+N'CHD.\H60[Q'4/;-!CG"4=T1EQ&7AZVH
MB,N(RT>D[I5(#G$9%15Q&7$9U1UQ&7&Y3XJZ9US&TLN#2B_<>JMC8!"<3B"4
MD."##^!8UBJKX)WT6Z472JG(28/B-H!@GH/)GH#465">LY:<?GU@W74N^/G\
M_'P^6Q],]]PU9QU57=A8:E9?T:5'%(@M5\B%R(7]YD*,408,T#U4]THDA[B,
MBHJXC+B,ZHZXC+C<)T5%7$9</B)UKT1RB,NHJ)C3[W%.WQ'*O'"@K%$@F#%@
MA&% =&1"44^)VAK/?)_M%)C3[PD%/O9F"SPWXH&;+7[;2-?/I_$>R_>3F[I9
M2".W'/W-+<+9B-/QB!$F*V".2A9@&"Y.)<+LH0-3L7MR<'?!$NV$]@:T(<5=
M<)& ]XH#LU8SQ0@QDGWM+E"MLY7%IPC<:!#*<_!$ZM;/\$)J3E+27[L+FU%?
MKYMFE6)W9S=0,Q8,1WT-W3:1(GHMS%T]T3_4JH]'RA4B>"HX]\ *98"(5H(Q
M4D*BD3*EG6.*=,(5;2QY5MS>M&A>_FLU67[J*J@42!5(%4@5]0H3J6(85*%]
M]-+3")QSU786"S JT<(7AK&0I5!I^Y X*PF7E /E08+(7(/3*8")3'(CK!0I
M'(PJA-!C)2SR!?(%\D6]PD2^& 9?,.:4H8Y ,(9 RP[@4@D3)(N19*:3#^EK
MOO"2YDPH V*M!4&3 >?:W2N&2$XLE2:0@_&%L79,)$6^0+Y OJA7F$-1PR.E
M"2NL#LE'4-:[$B*LT;[\:2TUBEOCN3=;4^!S<D$3!U)2#X(K!\YS"HE+JZF5
MV7KY-4V\7R37K!:?-ET-FP:'CH^=EF.CL7(Q=#M%NNBU,#&\P":\W2HE6245
M$^BH2CCCL@67M0.?#.=M^HMZW@5//22<N>M)6G;,K4:BPIWSR%@]$"8R%C+6
M3I%5TH)*2T$D:@K[%.[R/G"@B05%A!)>NJVV<9Y5";L(,)MD^: SX!))(,NC
M:)C.FHO#,U;;$R:Q<(.$A835!V$B80TC-6=HLE+E"$F&PB+6A/:<Q0"::*,S
ME9'1K>8P$7U6A6;*3;M"((1*L%E$,,(F8[/WQ&SM.]I;!<<J,S;*(''L,R5W
MO8VH/'!^FO9K&9_M[V[PO?YU>^6]?>/W'B*'8[K9]2JO%_GJ6BXO?FT!;K6<
M7^VF:Z^N_?YR.^W;8>H^S5>7;]G\%"5%[?]X]?Z"9E-WT:2G3;IP"[=,5V+9
M6,CZ<S]L;5;[,&DF?C(M@/'TZ@MNVX:V^4%FGPBEVE_\V JJO;K+6RVR__CL
MAS]_ZX/T0)]13X@YU&\=ZC/RB5(U7Q_>T]4],5'S]:$]#5?WU!/!:KZ^W=9)
M[^F>=M^U?9O;\)"MW+UW?Q\MZ$?)?5]R17';E_[Z@_IA+U)\^+B3*Z'L4>ZW
M.__[G32PZ8L9K0/RPRKVSE,X:E@4!)+:@83M!TBJU<C]PL1)N>LVD>:F?_&+
M/_^?MVX283*K0(%K$#V" 8)!71JY7S#X)2W=9+;;6= #%#::?^WFCT'%80'B
MJO,>PPJ$DH%!"7H2G885(:S.5U.W+,Y$&U><+L_28OWH^?R\_,!9FC63#ZD"
MC:YA+1 =$!U0(U&6._?K5%] .I_$.$T5 \F=6\C;MS^=+,LWA?NTD4]FH^79
M?-6X66QV:M9%J'Y<J,:8\!L+L]EZC;%@!7R $((0TD<(.3DO/LH2(00A!"$$
M(62W=A=WT3KEB"&((8@AB"$[8<A+MWX3QC(((@@B""*8#D$(00A!",%T"$((
M0@A"2)\@Y.=Y@SX( @@"" +(CIV^<\RFUH$@]V_R"2$E/-O[ 4T^#S[;^_^Z
MV<HM/HTVAWN+6H>A#8XN[B9.G/E5EQH>Z4P^(;+1.B20CC(0,EAP6B4P41L5
M&96)J:VAKL'(%+0!&;T H3T%9[,&)5VT(<ILZ/9,OGT=[FT$'I$Q=-M$BNBU
M,'%^ZS"XP@=#,T\6I,T*A#$<K VRY0JNF-#6>MH)5^#AWD@5O9$<4@52!5+%
M5U1!6=(FJPB61PZ",PN&405*92T"5X%J_S554"9L$2$!PUGYC&2I4 4G0&Q.
M,1L1E&>'.]R;T;$D#/D"^0+YHEYA(E\,@R^D5,Y07\($U6)_=KJ$%LI 8D18
M3Q*Q+FR'%DGQ&#-DEDMH4<@#O'$&C#4N%X;A+*N#\876<DPLGBF$?(%\4;$P
MAZ*&1TH3ABLIJ0V0E?0@G(]0I". *&N-D-RO#T#]Z@0A'BG/04$VRK:'IEIP
M/#)@D@66=?9<;(45!SG<FW*L7 S=3I$N>BU,#"_VPAN#/RJ5%<Y)40N0GK15
M=>+!>49!,F&-R3Z4D*4+GMK_4:E,Z3&5$HFJ8X3 LU*1L6K21V2LXV8LXW6@
MT5N01$D0-I?(RLL,VDK#DLDQV:W#O55VP0@=P!!M0-#DP-CH6@(+VE!.,O&/
M<+@W'1N#A(6$A835!V$B80TC-<=I80A&"5@J2\B36@*)1D#D*5IJG$UQZW!O
M)9T-+AMP67L0)%KP.J?R:6,BI5R3Z YWN#?58XG$L=^4W.[#@G$?T8XNZ3V6
M[$U:CB:S,#_?:2;^,,6,9%\;AE2@AG?E^*YD^:"8]([R-HPR5-2!*2KB9:^%
M.10U1+Q$1>V%HB)>]EJ80U%#Q$M4U%XH*N)EKX4Y%#4\TIQ[<EF3T'8+2=OF
MSU4$9V4"2G062>DHXE;15I#HC(T,>&8&A"N/G @.I"+&LI0M(>+KG/N;M'R]
M3@NV$_VZVHNMQYQJS+8/W#*1('HMS*&H(3K4J*B]4%3$RUX+<RAJB'B)BMH+
M146\[+4PAZ*&B)>HJ+U05,3+7@MS*&IXI G;R*1UB@=@4680W$8P[2.7G=-)
M$QNWIRT;8B+G40"W(H$@-(!U44+D63NNH\@I8\)V&):)QRS4W!Y]NCQ+BV*=
MY^4;SM*LF7Q(V"Z-;%\YIE2@AA@=H:+V0E$1+WLMS*&H(>(E*FHO%!7QLM?"
M'(H:(EZBHO9"41$O>RW,H:@AXB4J:B\4%?&RU\(<BAHB7J*B]D)1$2][+<RA
MJ"'B)2IJ+Q05\;+7PAR*&AYI-UR0-CLM!=#@& A."!C-/=AH6=1!.1.VNN&<
M(,*1S,#I=M]SB P\31)85I9:[23E\NMNN'7?SO.;;3N?F^/>I.5I?N\^OITO
MVBL[62X7$[]:.C]-[^=OW:)<?T?]<\K@Z=-#-V3DDUX+<RAJ>*1\H@7ER7D!
MRH8$0D4/GO ,1D6=5$C$N]A%=S7RR5$8,LZJKKD9>S/[?=V-76S0M>I?*QRC
M5]!K81Z;5X!9.514Q$O$RV-70\1+5-1>*"KB9:^%.10U/-*L4W):1*H8>)DE
M",8]F" UZ%!>\$*YS,776:<DE.!1)*!2.Q Z>;!:&9#9*J\B#Y9OG?5\$O]G
MU2S/RZ4T[^<G1?[M-;CI6S>)KV?/W<5DZ:;OSMPB>=>D^/Q&7/Q+*K%R4V[]
M75I\F(3T-BTF\_A+"O-?9^MO^2\W7:6.TE)\+"7%Q-3 ;1TII]?"'(H:HHN.
MBMH+146\[+4PAZ*&B)>HJ+U05,3+7@MS*&J(>(F*V@M%1;SLM3"'HH:(EZBH
MO5!4Q,M>"W,H:GBD)3-*G%,F.M"&"A":9/">.8@TYYB]X\SR+AJUL62&MHZ#
MM7O0R_TQ+<*D2:-Y+K\R#_\<S2]:&VAJQ6UT'WHM3'0?^NT^2&)T#@1X- Q$
MD!*\CA3:PXL]I<;=LL\K6..()!I8:KMTO/)@DK-@0PZ<BV"=C5^[#^]:*'K=
M-*L47ZP6Y6(W7L#:8VC6+YYN8.H*O^(7#D&S?M^NIVV@/S!PXT4.Z;4PAZ*&
MF+)#1>V%HB)>]EJ80U'#(_6Y)9$ZY.(U\Q0=B)P#6&TR*,Z)5(Z*Z+=F]>S2
MY?X-GWN=;OM]EWOW'!PE>+3=T$T7&:37PAR*&J+'C8K:"T5%O.RU,(>BAHB7
MJ*B]4%3$RUX+<RAJB'B)BMH+146\[+4PAZ*&B)>HJ+U05,3+7@MS*&IXI!4P
M*XQA@6>P(DH0) IP@B<0(2>2N)8N;57 =FE:QPK80$T7YXG7W(/>6IR;A4T/
M^KIS<W2Q6K3/+4?+^>A#:I;EF]I7_^(7?[[\T,W_ED\L%Y.P3/&RA[VU2NQ@
M1U^B6D"J0 V/U9?@V2D?&4AC-0AA CCJBE\@(C62,&:SVWL'^R_7@+5^V\EO
M;A'7QY>\FB]RFBQ7Z^[UKAK:*9/H7@S<FI%4>BW,H:@A)O1047NAJ(B7O1;F
M4-00\1(5M1>*BGC9:V$.10T1+U%1>Z&HB)>]%N90U!#Q$A6U%XJ*>-EK80Y%
M#1$O45%[H:B(E[T6YE#4$/$2%;47BHIXV6MA#D4-$2]147%D=K_;E=^Z3^NY
M]FW3W:9?>;1(%ZM%.'--PJYC),!J<:4"-:RCZ_BNJ'"]K'<7_X]7DG_4+F?M
ML]0R$""NW2>5K0?G1#O_CQ(3'8_)^H=T.4]"GCR] L)7\\6ZK?F7SRCX[K)?
MN;.9W-1@"_.=*.[NFO.G6C$"J:K7PCPVJL)8#145\1+Q\MC5$/$2%;47BHIX
MV6MA#D4-$2]147NAJ(B7O1;F4-2PCM3QX5.YVOAH20(1)6V/<J%@C,E0_C+1
MBNQ4E%^G<IU-7,4<P65E0 @MP9H40-H4-$_<D<SVF,IMBO3*(\SI'KW-(G7T
M6IA#4<,ZJ&/P54=#K/7&&@B2.! A); Y"= \1ZJE)U:1?5+5>E!C1S,9.1F7
M:T&"PJ(C,E4/A'EL3(5)(514Q$O$RV-70_3L#^+9NZRC%CF!H\55%[D\\D)D
MH,PDGCGG2HF'3&!'S[X:9.C6L\?)ZS5O97@Q^3"):1:;UGZFQ>1BK3B/[L9N
MPO3%:M+B^IDG\F(Y:N;321Q=*5(EXNZA0[*C;#'$>P1EW[ *X:CNB,N(R\-6
M5,1EQ.4C4O=*)(>XC(J*N(RXC.J.N(RXW"=%W3,N8^GE0:47(D7B0G%0-BD0
M3&MP1#/0E(H<F!)>FZ]++X)$9VQDP#,S(%QYY$1P(!4QEJ5L"1%?'UAWG0M^
M/C\_G\_6!],]=\U91U47-E:,U%=TZ1$%8LL5<B%R8;^Y$&.4 0-T#]6]$LDA
M+J.B(BXC+J.Z(RXC+O=)41&7$9>/2-TKD1SB,BHJYO3[F]-7(41B6&XW45 0
MCA*P)EH07)E(A Q1IX=LI\"<?D\H\+$W6^"Y$0_<;/';1KI^/HWW6+Z?W-3-
M0AJYY>AO;A'.1IR.1XPP40%S5+( PW!Q*A%F#QV8BMV3P[L+A?@IB[HP+Y4@
MDHA@@V:@)%?$4LN]4U^["U':I+,*H'PB(&+08!+GX(1.@M%0O 7[M;NP&?7U
MNFE6*79W=@,U8RUQO^70;1,IHM?"W-43_4.M^GBD7)&9"210 RP+ <*H$EJV
MU,&SHUX&9S77G7!%&TN>%;<W+9J7_UI-EI^Z"BH%4@52!5)%O<)$JA@(51A.
M&(T"(B,11(@1C!>IA!4F61.5T6J+*K2-/B3BP+!$00AGP<?D0!*1(_&6!K?5
M6;PWJA!,CHMA(E\@7R!?U"M,Y(MA\(6FR8=L'=B467NH*"NAA11 :;!&>:*)
MM%N'BAI#4Q0*7#3E,Y)(\((HR$0%ZRUW+.N#\86V=JRM0KY OD"^J%>80U'#
M(Z4)X9)EHH0(/K  HA #..W+(YV-4I3F<,NL2"6,-Y)"TBFW-%&H15('.=L@
M&%-.B?@U3;Q?)->L%I\V70V;!H>.CYV68RXQ'35T.T6ZZ+4P,;S )KQ=>(IG
MZ;WA!B+1HH0SU()W08"41D3K!!5\:V/]+CSUD'#FCB=I63U6'/-@N',>&:L/
MPD3&0L;:J6"3$U<D.4B>>Q")%O81Y4_"LI9<24-L^)JQN"\$914%)34#$7T$
M1X@&)@3/1#-E3:<)N+LQ%J5C1B@2%A(6$E8/A(F$-8S47(PD,J(T4$MX"7D\
M!<^)@F 9R9HQ:UG\FD#**T3ZP(!FTQ[]P@3X9!00[X/3(M!(U<$J.):J,146
MB6.?*;GK;43E@?/3M%_+^&Q_=X/O]:_;*^_M&[_W$#G@S>[U9N_EI:^OY7?O
M??W-3R?+\K/A'M)X?Y9&+H3Y>;FZ3^7=H]E\6;[<+<K3!3'+VWY=N.GHPBV6
MHWD>+<]2DUIP7.\E=,L41WDR<[,P*6]JEN6)]>E53[ZPJ3CYT)K27\J_5P+X
M-TQF,7U\RI[E:?H(<;)(:Q![6B2S.I\]BY/F8NH^/6U?W8*:)[+@2GM#E]OZ
M-D_\SZI93O*GJWM;?Q32+#Z[F#>3]7<OTM0M)Q_2,S__V(JV%<[U/LF/=V0_
MRGYG-6I0ACLMO;IUD<ZN-TU>WLAD-IW,RA4MBPH\=:OE_-F7+Q01;YZ^<+^F
MS09*<+G<YU,W_<U]:I[]\.>O5_]+(FH7[[,^;*UKM\MW(/^ZZ[6ZA:EN6E68
MNJ9I5ZQ\_/)#ZW_+WVGQP]=&)V^1Z9ZE]S#-W]I@VK5X7S]_-7K=7N',M6)Q
MTW'Y,SPI$!A'[U:^F<2)6TQ2<VC66+NL-]'V'Y\Q]A_!-6?_R-/Y;\T_5C.W
MBK4*]_GIFW>G/[]^<?+^Y8O1N_?EG[^]?//^W>CTMGQ2-5?]:O3\Y-U_CE[]
M?/K?[ZJ^T-$>E5*5C_;'BG_\^YN3O[]X7=3L9@YH[<2O??BOB&T=X*R9ZY)%
MVHMN?Z288OMV* [(?'7YELWO45*BFC]>O;_<^-1=-.EIDXI_5.SR2GJ; &C]
MN1^V9A%\F#03/YF6>/#IU1?<-F5@\X-*/V%_O$EX5^B^9KP_?^MC](G:Z6.[
M?(8]L>90OW6HS_#=I/Z[G]G])-#;K.HA$ROVETNZ<I3V&/7?-X+<<[:S]QF3
M/4NNJ'+[TE]_4#\<ET;N=X#*^[-%2J._E;_/FM'+XMGO='#M ,6^/W5&_.[E
MLB%^5XW?#Y_3-U"$OYZ+=5BMWGEV7 TK@N _>WH^B7&:*@:L.Z>\=RMJ_#B9
MC99G\U7C9K'9J1\$*>&.E,"0$@Y*"8PPB6Q0 1L@@"" ]!1 =IJPB@#RZ.YD
M**+*X?#N9'EKQ4"U7W-I)X6/7K5%UE%>S,]'IQ=IX99MH\Q)6$X^3)9?5861
M'VKBA^H#H6K]$Y0<6BY:;A_U[X@EMWN&[@'>T_INV\:ZV7+3S++3WHU=?:R;
MO2STB9'\CU]<$'E6EQ-VIQ5^DY:CR2S,SU.M6V>&9#1'N$,$MW(-8RN7L,DZ
MVD[WMEJ!: =W.YHCR" ,C\8(R_S76[F(TDEDSL%HRT'0(,!))X#'()3,C.FP
M->?[[6)>+N?G>=-T-=];C8W$K;\X5 EIHF)A(DT,@R:X"E$*'2#;Y$#H2,!G
M'T!EF[EF[?;=K:.#=CEIL'N:T&-.-=+$03;Z/GH:?BN0Q)CQ[BM\$MO]G^N-
M4:/E?+1(Y:4PF:;1[#J8;)]O_VKW38TN%O/V6- X\I]&\^N<OKO.Z3_%U&"M
MJ<$]D=Y>CUFO-EN(PD3[1OM&E3P.83YZ@8 ]:H& /]%$#\#9>]LZ;TT;X)7P
M:106*4Z6HVF)NW;KQ<!4$*:"CB0C64<&:/!#2H4U*F@O@6C>'D#:GOWCM00?
M"7'*6N,=Z:@PL0'"5_/%Z?(L+9ZOL?#G-11V/:_4,LQ$X:Q2I*L>"!/IJM<%
M"Y5THIHY\"D[$$I1\"(7(O%6JY2"]9EW5+#H@CZ^/^5ZS 66,"HM86!46U%4
M^R+EM"@&>%VN<!_;29RS6 RQK6?\.BNW<_/5D4^S5+X#@U[T(JH%IPK4L XO
M8O!!KV&9ESC5@U6D[<8C'HQ1"K263!C"*#'I(4'O).3)T]>ST!YYF%ZDS;^O
M9U>P^7J-B^];T#R9Q;_?@,SK5WZZQ,NNVC/&TN+)B!@3(YOU09C(9LAF]V S
MKS)/U#$(P=H2@W,%GAH/27CFJ(V<>OJ0&+PZ-A-C;?!8^,.P&=:A!Q&QOYG/
M8-U-F-;G^XS:8S32K%G/D*^5/M"+Z;4PT8OI=6:?2ZU=>W*8U*%X""X1L"0Z
M<,R;E --4NDN"L/OSMPB_50\BOC\!B9UYBE0]!0&;Z%(%+T6YE#4\$B)0M'(
M5 Z%'F+0!?0Y \]$+$2AN?,VZIQ,%R7@O1(%'TO<Y8RU7XPD[U#[+1\*D[7Q
MK4N^[GQ>A/5O#"710Z@:?RI0PR/U$'*)&(,P!KCP#(1(%*SF&8@CR0<A,J.Y
MBU#R)C25Q]/4/CB9Q9,;"-55KY@8:RO181BXP2)O]%J80U'#(^6-8)(5BJ<2
M)2H%PC@-/@D#PDM/%,N<2M9%9'E(WN!CHY W*@LTL6198:#Y'VXR&Q4LB),/
MJ5E.EJM%&LWSR(W\JIG,4H.]Q.@T5(M!%:CAD3H-)/LHE;5 F9,@DN=@@RMA
MI_?!9"TXR5O=4+L$FRT\M=N/3F?OBA]PFG^Z1*7='(4\^9@B_#LMYJU:&4;9
M,W02!FZ@R!.]%N90U+ .GAA\EZY,0>M($P1F2@A;HD!P5DA07(?$'7?.=#+:
MLUM>NF63K*88O];:>XL5TPH#V?5^]9NC.S\/ !VW8SYK)0;T3WHM3/1/>AW'
M9FNH=C1#,,J#D$$7[K<*@N A""JT"IWTWZ[1Z<U\UNX.V&S8>?FQ[:Y*70]E
MHF/!T7,8NK4B:?1:F$-1PR,E#1*Y8IP%(#13$-HS<-XZ**S C,HJIK1US- N
M0>;!2$/@[HU*:Z7[/%."'>I,B:&$F,_/W.S7<C5MQ?1SG-DT:;D9RS2=.#^9
MKH^+6(><;2&UF/ HY9Q">4];5PW_6DV:26MB>*0$CISOD@9QY#P*$^T;5;)V
ME1RX,!^]G, ?M9P@GT@U %>O/7*Z_:L-A[[AXM4:E \.\C'@Q-P0-CQ\JX#!
MDQ362) J21!")3 ^E$=*>ZHTIY&$+@H8VY/)GL_/S^=QLOST_!(G3]8P>3*+
M/W\&R:XVCHNQH@235#A:$SFL!\)$#D,.NP>'6<.]+'P%42@!0K-VRHE08$UD
M7%@EI71=U%,>E\.8'1.&XZ%K;>KK>'<:1N%=%%RN(O!%"FGRP?DIAMWHLJ#+
M4KW+<OB6C*"TXB2 YZT+09,''T6)BIDCV?J0BZNPGS#XE\_0U'5;!FO/RL*H
M=^@FB\S1:V$.10V/E#FL"RI[FL%(%D!$9:$$!Q98)I1KPTK,MG5*43?!YQZ9
M@XX5P5"SLIX^K//6%V&^7:0+-XFCM&FLW11YY^NM9)NJ;ZUHC4Y#KX6)3@-F
MR._AI#!.C PF _.*MT-6&'A*$CAO5);:9QT>=)3BMYV42X"\.H;J<@/"R2RN
M-R=LTN7=G0Q-T6G!&B\R6!^$B0R&#'8?!DLLVR I\)0]B& LV& 3&*:"RUY0
M%LE^PNQ#,IAER%]8W\7H^ZXS6ZYWT4U;6_W>7KI:Z0.]F%X+$[T8]&+NX<5$
MKH(AD@ GA(*(SH'/.8%*D2:G7 SD067F;QP"?8V3/[=_[[%'C8Z-0A<&0W D
MKSX($\FKUY5GZHA-BDOP7#H0/)?P-@4*A'B9F&$VV0<=Z7@ ,KE;-5HRCIR"
MM6B,AK^_P"<AE"4J\>^%^]1VA=0*U^@U]%J8Z#5@R'L/+T5DSTL(R]LY=PJ$
MC Y<U,5+B:[X(26"Y6Q/G=57>/AV X==>R5<CY7&>C,&NTA;?1 FTA;2UCUH
MRX48<I0"$F]I*W$'ADO6/J(\%3;B?NLTY&[JS7NF+2K'E%JD+2PS8V!]]\!Z
ML4I%Y&[J%I/+)F^?9JF\#1N\T5U!=P7=E<>N!7 I$BMA-5.Y'>,5*;@4-$CC
M17MP6:!NJQ;0393]\OQB.O^4TB]IZI9IGV4 3L8"3^7&@!L9K!?"1 9#!KO/
M! X?#:?20BZT!,+S!-X8 27:9I8D(;/=4\!]. :C>JPU,EBML3<6M2N.O5?^
M:I[V?'%SFW6<+%)HAVTW&(NC)X.>3/6>S.%3^389F7*&2'4&$;D D[,%KY5/
M7!=/(] ]-%U?(M>[F\!UM6OLQ1JTGK>8U=5TT#%16(P>N@4CD?1:F$-1PR,E
M$D$*79@2:4H6/ B=)7B2,G 2LQ1$1FK4'AJN#TLD?,P)MEM7UFZ-5>%Z(]-;
M1G^%U6)1WH2G/:%'T0<\JD -C]6C4**$DJ8X!DJ8\A^IP,;@@/G,"3%$A>TM
M7)TU1[?H=2/9?>52?-[?U?GV8(/#J(=NR,@GO1;F4-2P#CX9?-'6)J.H*($M
M(R&6B%A0\$(:\%DK[B5Q4C\H(CX\?]VQ%6ELC4$NPSHN1LMW7-MBP?/S-%JZ
MCS<.8UJ'S+A;&1T:=&CZX= <W,'0*7"9-0-O8W$PC'+@%%7@O=&),6I,V.H*
MZR9 W@#6>_<Q7>W$>I.6I_G&TY_/W^@H/)9CQK$[;.B6C(32:V$.10V/E%!(
M(EP9+J"P!RL1*XE@7/# LX@AZ.B\B/N)6!^!4"@=<^PWQF(NAJ>_.TEZ7;?%
M>NU@O0=?C"LMKI]Y(B^6HV8^G<31E095(NX>^A<[RK8.#V3P.7I3O!0:G0).
M& $A=0:;(@4MM2A>#V,^V_V$T =+QPM2X4"3[UC%Q@,@O!;,P:W#R)+(DLB2
M1\R2C%M*B(XEJ&<9A)4$/',.B'.<)Z-SW-?VX\,5K7F%?=U'RY*/4M8^:)J@
MKC3 ;QO1^ODTWF/MWJ3EZ+EKSD9_;U(<36:CST=.G10+^H"Y@@%Z094(LX<^
M#GHPC^?!>)-XC$:!E,:4.-]G\$EZ,$QR9:5CB;$NXOP"B2TBOEW,/TQBBC]]
M:J'QQK$@GW&Q>P=F3#AN<L8H'OFK#\)$_D+^ND^KEQ+)14= $EJBZ1ADX2+3
MAM39&$TS<7)K3,<N$?CC\1<E8T(H\M?CQ=??+L;?IM$/B;3['50_&@_V7HGW
M++FBM>U+?_VAN/('D^)="; KN=[*?T-1210FVC?:]W!5<N#"W+UL@1[6X<H6
MZY+%J^G\MV:4%_/ST>O9A]1T4+5 ^$;X1OA&8:)]HWWW4R4'+LQ'WXU"'W4W
M"GUB)!_ =I2W[M-Y:H]RS_/%Z&*U"&>N2:-Y'ETLYA=%;)_6DQ/2OU:3B_9]
MZ[^"NY@LR_7]NYV6/\_+W]P"ARH\/GX-,5./E3VL[-UG2I3DCF@BP!#6G@.?
M EC%"0C/B%0D6F5X%YTI5ZCY?GX2"C0NTMO%/*[:@#>=-$WJ<$2RD S+>-B&
M@F35 V$B62%9W8.L2C#$-8T9E(D*A"44"GD)($0QH54T(OHNVE .159RS)A"
MLAKNG@Z,OCN/OA?SD%*\K)W$R;IVLEPMUA&X&_E5,YFEIH9M'[W9KSD,CZ8W
MXNZAS]/K[;$']U(4<9$S2<%'W0YUH 2<(A)2]L4%"=1;T\E0ARLH?%60\,5G
M(#S-/UV"X*YG ^3)QQ3AWVDQ;W70,,J>U>>D]&AS:@\MOA+)(36AHB(U=;B/
MPW(?3'9 M,W0'HL'K@3(D%QY6K-@2 B=!-#[HJ;M?1MC32N<HGAL[/0HM6V<
MF/#0B0E=]1ZB]U&O]U&),'OH6U3L.0P^U6\8MT0X MQ%"J)X)V!D,$5^)'E+
M5'*DD[KT-W:<7@/C'B<F8*4:*]5(7ST1)M(7TM<]Z(M2Y9S)"6AR%D1R ;QF
MA8]L#H6,8M0Y[7%@PD'H2U*<EU#5O 3<S5<5#?9>B7'#3N_VF."&G=X*$^T;
M5;(RE1RX,'<O6J"'=;BBQ=?S$EY-9FX6'EZS0/A&^$;X1F&B?:-]]U,E!RY,
MW+$QB!T;)_%#\=?2I?=6EN*?K>]V.1%AE%W 4SUKP:<A9N*Q<-?KCE43B;&>
M,? L,1 J"O V4G#,I)PEURJ9KC=3_.1F_WR1_+*K79Z4C04G6"L;N(4B4?1:
MF$-1PR,E"M:>!NE( I5X(0I!-3A7_D,SXX%2:VG8.F+IH5L;.B8*+N78:(U$
M,;B="AA5=AU57D_A*P" ,26Z"OT#H@K4L Y78?#-H"%P)WDF('2)0H4I_HF/
M/ &)0CJB38YJZ_2L76+87]+%)2J>YI_GLU_?I\5YA^Z)8"6.)3BO"+<L($OU
M09C(4LA2]V"IZ"F3R5OP*F40D2KPEG&P7'*CE98Q=C(;8,\LQ2D=&\J1I7"J
M'D;3=XZFOYBJ-U^>I;*89_/%$@K<GH_\?+&8_U:^!0-J=%705:G=53FXZ\ U
M2=HY"\ZTNQVCUF!5^0]+/A4W0-E(MUR'AQ9I3UN0>M=B5,<.!!MK@\7:H5LJ
M$D:OA3D4-3Q2PK!>!9Z2!IJ$!L&8+^#/2T 0*%7)4^.4Z+I8NS_"$&,N,2V*
M55N,,W]OA3_G?MIQ[1AGHMO00RRJ0 WK<!N&GQ*/7(H8"5"M&0@3,OBD!938
MEND< A>LDR%T-U/B>W-3[)AJG#>'Q5MDJCX($YD*F>H>3$42<8P6II+*N\)4
MUH'U,4!B-O&84F)\J\7HH<7;_074?&PEIF"Q@HN1]3TBZY F%\LVK%ZD9KF8
MA&6*:X-OS6>4R_IA4(VN"KHJM;LJ!W<=/./:6ZW!"]ZZ#J8$K*X$N3%I8WE*
MF<@'%6\G(4^^2,3_<HU/SR_AZ56+3@,^JPP-M>>20[Y -42^V/"%-(4G1))
M: D616B9@Y>@4QJ5:$L%F3PHU-PO7]QR@!A3.,<<B[<88MYQRRV&F.@R]!*&
M*E##(W49O"D!91(4DO8"A%,>O"0"5(SM%B.IJ'[0!MBURW S-8TA)AIJSR2'
M?(%J6"E?#+YZFK5)U%D+1"55PE/OP263@#.=N'.6Y+PU9/#>(>W>^.F6H[FX
MQ9 6RZ<8V]YY<5],VO/SB@F.+MPDUDH'Z)7T6ICHE:!7<I_1QXJ:F&@ACA!4
M.Y##@M5$ B<IFQ)-1^E5)[MJK]V2:Q1\/C\_G\_>+>?AGYWMJE4,6[JP^QB9
MJ@_"1*9"IKI729CR:!@%H0)I\[L1+ D)5/"1%:8RA#XH?CXT4W'<S5MK](R5
MX0JCYS=I.;K>V%N,J_Q(L<?1I&E6FZ-_W*PLR)E;I-$B7:P6X<PU.)P9?1?T
M7=!W>6S?A40?2BR=((HV]Y^3!!^4@>*=&&L$C['U0[J+LE_-%[]<8^!I?OFO
MU63YJ:O$OQUS@7M\,<I&INJ#,)&ID*GN<XR Y,('QX%35YB*R@!.) ^)&R)9
MX2GONSGAZ!!,1<9<2F2J2J-LK%%7&&6O]]N/\F168NKRYO%HEI:U4@)Z)KL)
MTQ<#2XOK9Y[(B^6HF4\G<72E1)6(NX>^RXZR1>_F,#WBR3I9W!@(P@80B>CB
MW90_34Z.:BVMV)Y@\M 9TC<\G36XOKK"UI-R91_6)\C=W=]IRMJ51[_C^"A1
M86WA.Y:QR;<37@ON8 R/3(E,B4QYQ$QIN=$L<PJYD&)A/9VAA/D6E(N6Z6@I
MH;KKX=F/P)22(E/6PY2/4JD_:,J@KHS ;QO1^ODTWK,0_]PU9Z-BNVV#3!SY
M3Z-K6QU]-M8*2*:2!1F&-U2),'OHZU3LR1S<LTB2\A0<@TB)*9Y%\3&,T 2\
M)RJ9)(FUG72<%YAJ4>H*I'[Z]/<FQ=>S!SD5WS^ZF(X)$_6Y$VBV/9<<L@>J
M(;+'ACU$9EE0H2$1F@L3I/:T!*N 19F$8%8Y:KN(2P_.'F9L.!XH7-F(L Y*
MU!A>WC.\?)ES"NL!8"\_AC,W^S6-?G'+-'J^?MR,"A2TECG>Q*!MP\B'8FZS
M93->=X!_GGJP?D.M\(U>!&;D:_,S>IV1/[@GXAC+/'%18E(I061/P7/+(&>E
ME(@N*]%)3_<&#T_S%1JV8'@Z:[&M_?\-_+LQ[Z6\<#*+7SYQXYVO9V&Z:A?R
MQ:2YF#=N^A^%]2[*)\K?[05/9JL43R_2PK7WVY6'H[FNS[_I4:Z]AXA2B>20
M^E!1!TQ]@R]&*Y:LD3Z!\X4[12S<Z4EA7JZYC$%)+7@G3>E]HMJ[U;>IKG!&
M6X\X]P#U[6\7M6\SI8>D(OJ==7@T$D?WY_N2*UK;OO37'PH&'TR*=V7>KN1Z
M*_$.1251F&C?:-_#5<F!"Q/K.GVHZZS;!C?UG F6<&H$>BPI5YZEJC@'=?"<
M$/%!TD0L%"Q/(*(*8#(E8'A@W'B5_G_VWKVYC2/)%_W_?HH.G=59.P(%U_M!
M[6Z$+,NSNL>6?"QY;^Q?BGJ*F $!+AZ2.)_^9G4#)$B0% 4V@090CAE) /I1
ME969O\RLK$R+<1O;+X^*_OP1)X-Q>#/R@"[3^$ML_KZ,":W&F9K84TM;+:)'
M52E\<.B27P!HKXEY*&S8#0 Z^$T0GF(026)D,=>(VT"1IDZB:)S&%H/"3ZUD
M/G85\!ZVX<%[6I02\.6X7O&[EVOW'9YVK_HYPL#S,W/^92/,786=8OV4-)*N
MV4=[G4:R=8N&)"X$]0ZE ,8,IR)7X_$"14\CQIY;*]A-BX: E>.]I$BHP+)%
M0Y"6.@(-* F$8TQ-NQ;-;G(EB>YI4M(ECTQ]=(1R!><*HQ:<:P_GP$NW6AF!
M4NZLQA.1X,,[A[32BI-HA3#^)LY)88VW22.;E .<"P8YE0/=4>M "%,XV /
M.=/CW!28V[7V*#OH!^?)OX8OBP]_%+8-[=.LH,)X[H:Q:];-IB''?^D SVY,
MYB,U=!C!W#/%D1 6G/.$";(.<Z2-(UQS)IA;*Z_+@TO2.0^3MB([] *9Q /2
MW$1MDG-8M[LGOQM#A_(>-AWLFG,OBQ^DK5-@K\!>@;T">RUVIF5&AD =$HJ
MAR[ 5]=,V-RH%I!-::EQN E[%"<LG*>()!T *BE'+FJ),$"A5=R30.0!P![O
M"=-Y__X84*\</=Q']"QV1SF:5(XF%6(6^2[RO9\L>>#$W'SCI%A8V]LX>3\_
M/Q_&W%O$#JOL[PS'T_DDYOV1>C?EU^'X2_5FU'@RX*!T0&Z**B_:IZCRPR5F
MD>_"DAUCR0,GYN:G5=HVU=:Z5C^5[;8@_D$UJ*X-MG,["%683^#J:G8:J_,Z
MRR6'HD\Z($A%MQ=U5'3[X1*SR'=AR8ZQY($3<R?YR:NF$LUFVE83EE=M-]97
M6!V [?8F<V:<SCJ0XW(<BKT+Z10E+ZOD9>WH?+&U23)'D,38(&ZE1M;H@ )Q
M'@N<0DQK>5F;E A;JK4_P"M]&]NJX<5[@G>PF^CQI4X58"K 5("I %-[P&18
M=)13BB)C%H#):J1)S@#62L;$/..1MU'*ZVF 2?44[V")K>,#IIW4WRI><?M>
ML1^?Q6IFO\9I!Y1Y1R2D&"#% "D&R!,9(,YP$Y+'**JD$>>"(T.H0<)B+  V
ME)2M%,]N5-N'K-FR#=)6<:P>-AVL;GU\!D@!I@),!9@*,+7H&1/I, <DXL(#
M,&% &FU<1(P)[SCS7$37CF?\-,!$&"O M'M@NO2,X1\6IOD@T3'+HO#?/Y$K
M$=W$2[P:S7VO;R[-3SX9S."U_CN$K?IP&BOK@>=A>!<Y:VXTGL'3[02^!MF#
MZSY-[+ ZMY-9/A4Q.XW3F,6L+GIF<U6I-!C9D1_ 1=,9?)$/4TS[UX@?!I\S
MS?\-_EY2X)^U8_[UA+Y(P_@5A<$DUC)Q J29GXU>A,'T?&@O3O*O:YS;%\"
M>4:+D$;SQ=_GT]D@72PG5]^*XBB\.!]/!_6S)W%H9X//$?C^:Z9MILZE"'Q]
MH!XE= ^XX4%KKVY=I-/)C9#*8#0<C&!$,V"!$SN?C5]<_P%(W'Q];C_%)GB$
M;()YGMCA%WLQ??'LIYNK?UVOY<6[XH>U=6UW^;9D\;6]5K>HM%6I\D,[G>85
M@]L7-]5_P^<X>793Z,0M-'UBZBTYOT;S6L5\G(T_KNJ1CY=ZY.-2C[1U%*SM
MQ7A;J\C9N'JU,O[;6H%T9L35KY=*^OVEDE[EIFVL?4=I\\-?(SL/\/KPXWY0
MI'4"A/%P:">5/1O/@2UR$\;:-FK^=3J>3^TH3'M5_.IC+G=ZVA@'(2?7+SZ!
M!-AKU,O*:6'(OYV?Q<G +U,OHJ9,F82$5&"34YQ0KN2&/,8V:,,E,:T$F-Y-
M/MG1X)_UJ<TK,84/+T?ACPD8,: <\\=WZ5(TKB3CZB3H!QC%S\.Q_\>S*H+E
M?PYOF$WFL1EA71GGY>RAT_I(GM[":%#J4LM^)!]'=@;S^#B^+.#ST=GI8/KQ
M?$F$KLKEVW<?7E>D^M__2U-"7E0_OWS_YGWU[M?JCS]?OW_]]L/+#V_>O;W!
M<G?0]K[Q/+N=3;FQ-$I'D?0X5UFV%#GL%5(&6#%HG&B*;;#ISWDMWJ678('/
M,T-]^@,8U5\T?][%? _B(OE8)NHH6]04JPO8KDCQK8I[=?^/]P5CSV^.:/?D
M:ILZ:^[<-UVUVM4#<KYY]6M5IP6,:HK:80\^^G[U0Q9 BE_ [V_J?Y(7/];:
M?P#WGD\&\+SS_,"YFP["P$XN>O6CLLZ=#S-'5W4]L1M/N_JYMWAH_<S9^%,$
M%W-2?1G,3O-SWO3J8UR7=]7S6@ZC*7!\:C_'RL4X@M%$\%-AGH!;F0B3 +.-
MS;/^&F6$;ZR?Z>4P_NJ_[U].ZE,$8]D.AQ?Y9D ZN-Q>RN5RJL,;=U=_>_GR
MC^4C^JO3!BZUU9?3<7[@^,L(GG9%HP7!W_3K/YM+X<K0K%@]R6;8HW%UI;FK
M,8#T=!J!\..:2K/3[*/7D/TY3F=Y/1O,SB[ZV=DXLR.HC[J<P>7 ^M7+X7#Q
M@,L1#>)TX=Y7"R+7?'%M^.[BVE-J9ED.=C:QHVD3UIK6J^+L,!-_NK(\<3@
MMLV,V*_##G#[V72YM"F&3/PE,\!,K_]0?1I_!M[,4UQ>,XDITV!<C[I>B_5K
M&Q99/*IF^OH+4*JWO>O&!?>]LWY?<_T/@V4%O3RER6 VSN3\\=;G@!DU'P$/
M+5;PRV":FUZ'@:_)4M38LB['.,V^U&9FS>X]8,2!/ZV^1/@*WOQY $8I\&5#
M>&#-+"O ^(ME_&.2969V4:] _)_YX+QAA5&<K2J;Q=7O:DEH7K3XN;?"M9-8
M.]>#-,CZ8!2N:]0YK,OD^I,&@$FC3X,<0UV.'EZ\5#/5AW%^0HX6+UG7SR>3
M++D7T4YJ:T>]R)KU"MUZU;_<YEU^!^6W$:"/*A=EYBA&)\ "9AAIHS@B7@7&
M! XZK/5L8BY1YI5%2D2)N+("69<BPCSRF+ST%OOU6I?G=93SGS%D334'D5MR
MR\,SV>BWXO5]>6>TO@OR4<']PTS[S)![P!R8,4=]-"@FJF"A/<F[-QH105@$
M#J%$KNW>! ??!F&0)>!7<9,4F--$(L])2BX(N.F61B=;8 Y*^GHON / KT;U
M7Z*/9PY4$R.]BF+*[]1O:3(^:TV+9OWV ,W8N\+6Z7G>!?@<AQ<%"I>+^<<5
MW$VS>9LMCEOL^"K'XL$6C%<FU2\11@97S9:*PIZ-)[-%3.26)7RY\G-FF[7E
M6MYSQ3Q@_KG!Z"8./N3%UW>(KKG@B]AVNPZ]2Y9IDC1B^;0/)]PBYP5&*MID
M>> 4?/PV'/J_IO%=>CV=@:H 1V,3Q_WQX9^.>NY FLQ6E\0I(K[BM#>^ZZ7L
M?=MM'XR6=N1@MG 6+_U14*6@KT&?5C 0^ZE1$*"-S^P_(G#D@OZ-:$ZG\[/S
MQF\#=W)6V;K[=FV8PI! ;F.XC S#P!;^9^W;#*P;# <S<'8:-^NN>T"#Q=&\
M<:SBU_,XFL9IO_H_\6)E+ M3/L>;IW$QDDE^W+ F 0S^,WBI.2Q=TV80XI)8
M-1UF&8>G#1G\'+Q>D'T8E1]/9_5.3?93A[%6G5]C0.#,^WAU7Z]RX]&\F=5X
M 54Y1@]05-\)(UX8XMDJGX"OG2V$G)@-:G 4TV!!D<]V.%]HO>%P_*5Q@.%3
MR%YC#DSD.Y;0!]PV!$HW-+QHZ.3CX',=>N^M/@N>/)_&-!\"R3\WCKKU]0+G
M)RY5= [)K /L /SSP:1F +CMTW@<OH!QL/!-<]((/#%<7KWP;[*#'X'C\C*]
M]+,Y<!Y,'!S_:;U^X-["S.J P&K X,Q>5&&0LH-<VQ%7O'?IU5RN]P/4_S&K
MRCJV,CC+S;LRU8NF7-&4\^5VW8.4Y") 4$?%!M/J_\XM:*<)&%-_UHHJ2^>O
MV1<G&/W?VT*)Y_/)=&X;]5GKM_EPH3DG\=-\N S,-:&S]Q%\^5HAUE>\_NI/
M01YK"3D;@(T-+_MA)9SY_O6KJ\CAASJSYO;'@\B!EJ^F^33(XE6#JZ*D]>5I
M/)[E'1^0P.7>U;0:Y4N&JX&2'!D=C;) WT:OWOTAU"6\]#(Q7*T_0U;F(8?0
MQC#".K3W9G2;Y(_/!Z-:@\Z^<PD7:0Q9HU8VY"2?YOM+B,C:<#'3K$'GD[KX
M5[/ME1T,T,'3''+-&MM6";3AM>#*DJ!+!0<?5R*N-6DOA[5,F[@9*JW!H%Z4
M1FR;JF.709QEP'-Y>8.1T^5[8+3+EU]_7=Y5S0O1??^>1DRD)PIA+07BS$1D
M.'R,QFK'*0Z$RC:L:X (\&/?I7=+RKV/GVIVN.;:+[Y<=>K?O/WUFE>/IM%G
MSSZ?;YO6F2:WSDM287#2%A&>LTXY=3 OI1"W(E@8OXIQK5# )EFGVYZ7DUQ;
M[B3B(<!L6##(8,40QL('KYEA>8SMK5>C;+-E\\03,U9H$3U#7G*">&02:>\,
M"M&IY+FFF)DV%^P))@;2=TMT:8,O.A20NM)TTX8B"XC+Q,O?9I+UJW=K^G"I
M6&>GDQC1&3SP=%G2,8XRGG5IEK_;B3]=QMA$/<,<;*M!"J#Y$HH&-2#7>S[9
MP;B!/S6N95,: #8;VW7GUB4=P <8UOL$2WOA>Y!T>CJ>#T-^[B3:L' @_SX?
M-?)30WQ^Q\,?>#FJ08ZCUN-:+,M:Q/'2/VS2B[./%<&(N&Z?72+DI=7PLK%5
MUFVU__, !Z+D'7<SWTR7O..2=[R2=[S,%5RDU-G50DT/3:MK-59,HQ5>4H\P
M6#:()^7!THE@4Y@4DC&&I/5NM1M91_'+2N+79#R"?_I&M[:6!G:P(9(_8]9J
MU14!J^L4_,Y<WEW1Z>F/^'R+4-5;L$W^.\(587R^DLC^0,)U/[*T(=T6U3<^
MW*R^<=0!N#>C*]L.[#K6Q'.N3A>L<-G[&=A\%IR:ZN<Q_'4M\O7KR_<_7^;=
M#:;3.9B M][ZUWFH4ZR66Y3O_[J\+;\>85,G%EXNU$GUYNQ\,OZ\8&TP,:]^
M76GP,UU]XO))5VF%3;;1Y2;*)[ MP*[(H37["3Y\6MDB759HJ2976RJ+G8^Z
M%KV[J/)&PJR)I5^]K,I[W8.4CVD.+ZY>E:-<R^OSZ!?1O-BKZCC?,GA7IW#W
M5@<$! PP%#!%_2(>. $-7 <R41[>8J1@L</CIDV ?@&XF>(W0EYYJ:X_?&6F
MBRV<_*S%[D>>Y2+WKM<X"+UK@\A[*,!5H^46@\T'#.;YS$&]G0TV^!C89SA8
M;++,IWE(( JULY>U%UAXTQLN8Y,UY2^6Y.[E]:A!YY*T5<ZJ^U1GX^5,B"\Q
MAQ#S<QK_Z_,@-#L;B[?GG,UZ__PRM BK A? ,L!4ETQ0YUR*YTW8,?NETYRX
M64]Q/FLV1<YRBN3Y\*))&XW?1_[%IHH]/P=U5>]W+;,:,ZV A\"$;1)TAQ>-
M](%-,0J+7-[A=+QDII5(\'56C0O6O+[ WUC"O\\G@RGXK L>N9.:UZ_+>8\+
M8M5N_#CWV5H;R77!J/>GLO-;;T1F#WGI9]X,M][P.S,A;SJ>HM<XMG!)SNO-
M")=%MPFH7P9F5RBX\+QM@X6UU,$:CI>9*7D%8457OJA%\7I\=S"]\MR!>>IG
M-=TH0#,-ILL=@]5)?\^4\KKTKOSUYEC.0B'92^ZX=4< 5,:XWA>8+4;8,-"2
M+##8>@NDG@3,Q=<^=Y-._#TG?HO9<'7,KHYET!=_7BJNS"63> HJ-+-/<_GB
MHM<+S?K+=:!9P:UO&B*R+Z4Z#D/D;8;YA2'"%X8(V!67]D0C7AQA=G*3HCG]
M_L8Z50OBKYD&^0%WF@8K\K9N'?@XJ;>NFBR$Z]D/*P^_QQ0XGSO@OELM@F7.
M\Q66-D'E!21<)E_\8'_,FYC^U$Z;U(%\5F T&^>#&C^X'ZMX=CX<7\2;B0X_
M^!^KL)+'!=^$']<2#*YE=C6 \4.\>2-\&L:K"U9OJ<'WTRCG:V8L6589& ^&
MJ+[VDYTB4)IA[K/DY,CVYX80,/%HZX48QL]Y>W9IE(!_W.R)7B'4<AF61+F$
M=SO,@=!+DH?%MN:2PLNLMF5^]N7^Y_756\7<Z;TK9JML3PQF3=PW@#,_&5QJ
M[L6AC=4MQOH4QM6AS+OFNC*CK-B768+#BQL(OS3LFD?6'P-8;Z-K6YKUP*\"
ML%.@82;][8S[<*B&.]0U<%NDJUS;+EUP].)ZO7K]CF!\L?3PSKC(QUGTE5JB
M8[H.H%>HWK#&DP-UE;-I)AF*'X/7=\3/;\3DUA)S=ND [S($VFJP,20AL(L>
M22T9XCHI9(+2B!'MM?$Q>+Y6\G>38&-NC_9R%/)?KT%7 3L_[*3S=JRYJQ/+
M]&,N3 STR34A/(RVJP'(M_E\,KT\G_SGZ_<?_GSSZL/K7ZI7+]__YY/QB[(Z
M42(P,@16G"<BD/$XHFB<P,2JZ,G:.9M-^.6]/XUA/HQYCWNY'K?ST ,XYQA#
M91E*TCCG@=:@4;ORM0,8LG%W(^A1FXM UE[]9WW<8D'=WB+NL5R#YH+F8,<^
M['[GY-OOF-CT=/QE='6(=07%5C:>%\2J$A#W1I) 52<)3!?[T'<,ZJ1+A*M6
M5$53 2[7@*O9Y9;:UO6.YV+W,8\N/QY$(%^.AO9B/%]<TKR)8-S'SY?7YXQC
M>SZ-)TL3<2E*366W^KYGEV-8K1V>HQ9-GO+)\B&K5Z[6K&M>S'5?B.>K.Z;+
M[<%ZR_2G^^ZE?87)AO=N>A\E?4R9N?I/;7L AS_IJZKT-[BKS0:[WZZ@N)4Z
MLSO:_G]TH=E"OE;(M^N^F<MI;[^(U2'Q9B%H$?8B[$?"FT= T#L-L$7>8SVY
M;AEC9X,0AO'(%4S1SYW6S]>KJ.-^+J)>ART>7,A_=PIGXVCJ!C&A[3/Y/2MS
M?W7[3JQ-IS7+IGW:BEHI:J55M<*+6NF26MG0QO0^QF_VG_SVFF[4I*?[-F:K
M)[A?U?M'H["V(;.I(.VNF]>^0\C#:/KH-C]=H6C+_;JZP9G=Z,>UA1H/R5OI
M$PV(1Z+R,7F''(X8.:%4BD$KE8MU7D\\X,$EZ9R':5J1[Q'()!Z0YB;J7"X4
MZP<FJKR<O;*324ZI_R\[S 7X6^G+)7J*W%W+L0CM\C5;UG@'!-T%10J*%!19
MJ02</)51$61X3( (V"*72$*.)BT#C<1'?1-%*$Y8.$\121K@)U&.7-0284 6
MJ[@G@<A=H@CK2?W0[HY'*K2[]B^7>QC%OWQR__+/ZQE]7=:ZQ1YX!/-N&)_<
M9^6S7>WP^ #P89L2S$B:'!6(4"P1UQ8<4B832D:QE"OTI?7B?)LXI-?SWU\U
M1X+::@RM>TSQ7=H.&_'?)KVABX@75"JHM/<L6U#I?E0B3$='*;BU.H=)(Y>Y
M>)A"*6@=#-%<F[5&$YLXN$^)2H;<W?ZHJ])]N)"TVRW5U:-[0.ZM(^#JX2?<
M-_3YM1'A>\X1=M=%_E#7P?G.(W_??S*NN-Y[;>0\- &%]FG6@V$\SV<&NV;F
M['NX?F-:'XW%XZP0GD>*F#<6<>D5<@)'A&7 .B2ON6IM8_A&/'_M:/KU+U:N
M;,DRHKR'#>UFK/]>3CU<\ZB 60&S F8%S%KJ9",%]]0;%"/'B/M@D$X$HR0Q
MT4IY*50K[GL7P(SWA#$%RSJ$9==<??B0RWI\LS_>,1;7N;')G.L"-[VVIKEL
MV_D$&+SNL[+2/_*V_B)Q%">?+E:Z/;I<>SA.%YTD%\7\YK.F1:,?#IHJNW7M
MNJ9?Y4TOO:[L6]=JRQT:KVKYO<SU?.&BU\T;_S89S\_KTM7]JWJ3K_]VV0[N
M.]HC'G$5MMLK9,F4!%-.(^QI1-S)@ R6 NF8 NCI:#VE;53(^FUL1].WN9_-
MAXD-$11VW>;ZSZLNGM^NKK8L AW#R]E#QUXWO-AN43;V<=DK]>-*D]*/HSCK
M='4V=EF=[=6[MQ_^?/GJ0_7GZU>OW_S7RY]_>_V^5[U]_>')ZK3QP#0Q0B+%
M%4$\P$KJ(#1\C 0G!K^DENNT+0KH-RQ9,R>PY*(T_^C3%5N6>FVWGXM9</CU
M-KS XDW#X6E=1[2I]WE9UJVSA<0ZY(\^.1(<3-$T8?I*;EJ"JR\WOG73^V2?
MKU8/,WK; ]C-G)79?<FT753L>-29V1NNVE$%S0KA6CA.O]VS]%TYK-WM^AS;
M/D7?E54I>J3HD:)'KM9EK=UO427=4"6[2AU[\DSI+FS_/7+I?AX,AXNN+. E
M#K,SNI'8;#=!KYO9>;L#Y UVO1Y6.JL+'/ZD&]R;ZH@'D^]H]JPETY($3)!C
MV"%./4%6&8DX<<Y[2PV3HHT$K$9C+>.D*_L<K257T9X4;617'9Y@;D69;1U*
M[A?1'8#+K2*\5^BR5R94)P&F/08^((PAC/#$,4=,<(JX%QY9[AW"5C)GG'8F
MKN5%$9&,]Y(BH0++&$.0ECK"K"D)A&-,3=HZQDC6D[2-$[<'*9Z[]CP?7:>C
M>)[?7KJ7>??:CGS3KO.R5;6?Q#"8U0W*XP9GAXHKNG_&0KN1SGW65ZTKE"<+
M(A^*G?'#8W)G'F')1/!U*5,281S \XW8(\-M0$G90#4S2079AK=\J65_'4]^
M&<_=+,V'RQ2M*[NFW8/;LL<-V9EMTW: ?N<X^W!6^W$_\++XV]U@^@*A!4+W
M&$*]A$>KD) -C"-.A$.6>HRDQXH)8@%"<1O!@-U J,(%0CL%H3O<Q2X>;=O=
M)\9W9-GOAP'5P>79*VOIH:6='G0T>;_T6R=V,#:C\@&:3G?$!I1TD8.?SSA+
MB >ED='<(V]DLBE1QCAI)3:P9L2\C;-V[1C*9(_(W5DR&_)@MVR9LNM>H@ %
MUPJN[3NNB6BXH@!*EF;GFPN)G%,>!2>3BHJ;$&(K#OL6<$W(GJ%MM-LHN/94
M!4NZ<ZSDZ<M0W%Z=XXYO\Y] K=5* _^LD?7K"7V1AO$K"@-PC#-#YS/#\[/1
MBS"8G@_MQ4G^=8WK^@+X)X]U$0EIOOC[?#H;I(OEL.M;41R%%^?CIB#)25T6
M9? YKIY!O63?KP_D2$(W/_C_N%,J;:^JN;:@RT4ZG=PPB0:CX6 $(YK9R>+@
M]_4?@,3-U^?V4VQ"3L@FF.>)'7ZQ%]/%T=[5U;^FD.K%N^*'M75M=_D.1P)7
MI<H/[72:5PQN7YZJSG_#YSAY=E/HQ"TT?7956F91G,6NYEI_=X&68ZRE\>&J
MUE(UC</AM/* HK &]5&7G&MT2Q@PUS:V8$!,0IV;5%=@&LRFU>]V"C)4K>0"
M5G_,)_[43F/U\M,DUJ6/F\M__^O7OU4_V]$_>M5OLW!56BE_?UE;J;IMU^0[
MR'!'P1?G?$Q2220DYXAK$I"VW(/1Y(WV7@5IUFRL[RGX,O!I</)^?@8L</$N
M 37&(S\8#FKF?)?NS)M\/QZ&#^/?Y^G3F[IDU6"U%,S5KSXW2QO#,W(JV*^3
M\=DK )$QS&_Z;O1S/+7#]"[EA]1EZ2YO?SN>_3<8>+?>]^&^6C,WZQX]A'BU
M6'6%NR]+P.1Z8S:S\<IRY#HQ]S'Z%*B>2Y+5[#H[M<"]<1*K"'(\R-9B/A-F
M&U,:'I&3]"S<9/.M<U DDVIA9^?7OY_!U782IB!P89# 4JU'<%E4[/VK)>-7
M6N+>HG!9OO/!(ZR;12_7N*EPYI>K7,&[7,T?>=+UY6$^R8_/A7*Z5!YG=@JJ
MHCJ#SZ>Y\%N J5P__U[/,Y]>;>JOY_$[.ZQUT3?6<S2>W4T@6U=EO_-5DSC-
M^9> /#"[2UB[:3Y>H=UCBE3=@F</%;S#*;*S:94:L>U2,Z9/MEU1AVU[CKBO
M::F@4PHX%,*U6/E"ELH7VZI\\;(&]XSFV4K+)L.'VLSXO3$S7F<SHQ3#V.MB
M& 4*"A3L&^%*$:123*TH_6WJD6,A9=$L.]8LI;9:1\1AWVJK==PJ:K>V6H17
MC^H@=Q/![7T[VIV=N!S(O8BKP=QO1[ S)1#O2[U:%MK<F<AW14[95W#1^@;D
M=YS_(9N=.SQ$_MFK=,&.TW(/4@$WM,T..\W/2JNID 01G5/VA,/(>2KA#T8!
M=)*(W#PFS:_>@KYWI_GG^>R^/>'6<@![1K;1HOP@I7<?#_1V56@+JA14Z32#
M;J4EIM;8*X]8R*7?@G9(1VM1Y)IP2X-AZYVLI+#&VZ213<H!J@2#G$H1\:AU
M((0I'&SG4(7T&-Y=]=&.2^^N_>:=58;K^+JTJ@":I6O^_/E;#O-*GM=YG S&
M77>6:7&6BUG38<58K)EM6#/&\\0T#TA%GH]K<XNL!$>9B:!T\MQ$G-KHR[E^
M%.X]V"0MF2J$LI[4HM@JARR2!1?VFI:'P81'@PL"_%-A,$'*4< %"XK>>D.0
MI=PE&@B5=JV)AL8Z,/"*$3,\YMBI1\8&@0)+RC(5>(H/."+=)BXPUF-&%USH
MI@];]GZW[,,NXD4@ M.;QW**][JW['(@5DJI#UOJPQYF?5@M5%0I,!2$IN O
M2XPTTV!+$:>ITB(81MOPL?^8C %1PS3O!MQB5T4/.GXV^&=]WK$M"XOH'E==
MW"4XX@*Q!0 + !8 + #8&0"D+B7AC$!!8H\XM0K9( 3B2GLA:!#8ZC:"";L
M0&IZ>H<-U H ECWUO8I'O![E"1UX(CHKQME!&V>E;NTV[+12M_9FUUF;7'),
M(PV&$]A$N<<Y9[DH.Z'>P?\C>51G\ZZD'C+2(\ITWJ8ZCIJV!; *8!7 *H"U
M4>1;)N<5ET@3GQ"/(B*=8^":$0.P1'1(_B9@49RP<)XBDG1 /%&.7-0280 Q
MJ[@G@<BN 1;E/:VZ> +K& 'K]B+L*]60@;YG:#B8SE <UM5R:V8_7RF(?*W*
M^(UZQ+>6$Z^+8+^H)X?RXZ<GSDYC+H.]1H:K6;$^R^6/VRQ:K!]1'W0QG)7P
MQS]B/(>1#2^KKB\J>]=DN8<.UXYBKU3HO*QU^?S&$Q<*)(W',W#U8Z,]WG[X
MF S(/$T&!<; >&6,(J/@7\*%J$5,1C+\K/IZ-CP9VM&G?W\61^BO][NBWWI5
M7'?SW/VTFD1XZS17:+XO\'%5!!>N_CP8SZ?#BZMH"$AT].-/(QAPJ-Q%G;2Q
M+"_MYK/JU#81$Q?CZ%N%6/]?.YK;R45%>H^O3ML>\:X5A>W0N*[7I^VOUJ==
M\NZUY@9%ZVQ7Z]!6M XST7MI%"(T*<2=3<@ZRY$UE LE$]61=%3K_+HHN]@A
MF?F>0M.KFBSKN$F^>A1GU6"4AN,OM<;JT-3^Y;:Q//Q%V]AY4XE;C2FB/A#$
MO74($#4BEC3#*5!KTJ-23VH#?'7;+6?OWE-^_TY[6UZSM\4W[&W1OSOEI -\
M4<']0QA3EX:4A:Q#X^F^Z'BMN(DB(,H)SR>U<W]O:P %@E*2.1KQHS:M=R0Z
MK'^WG]H!ONB@Z%PW^G++B+H/B[?3TZI!I=JR'H,I9^L>%)FJGP>S05S\DE$M
MMZOX1M^$8DYVS9QDK9B3@8#?ZKQ$(D71I']:%K,VD8DPKY/1HJ/F9'9BX[4-
M^^_W8)_$;>V0>KC#F.W0"+_;:_WI1G.45?5S>U#POH'>T2"**6D%Y0I%B1/B
M5D;DB/ ()X%-()H(JIZN0=0KT-XKQV&NMWBZ&X3_N S'W-)(:OEC_FGEGKI'
MU-E@-LORL_;FYAFYW=35]_$J;-W<&6_TB]I./[5\=8<[JGVSYU2-T/[N,T_?
M:&-T,_3VJ Y5[U_=[#=UW\#6FDC!WS>'<]_0\W@FESPWO948R^D<9G^JU>EF
MN %\R=C2$"6N-//:I!W5^0'U?V)](3;M5T3[6^^0!)X_9OCJOXT?M#=3IK0O
M^=-VVRJM0 XD@Z00KG2%ZE[!_M(5JLVUZF09_P(%!0KVC7"E=TOI"E64_C;U
MR+&0LFB6TA6J:)9'F).E,MANND+=$37-1V_7(J?=/H%;6D%UP'8XO)*)>WU8
MZ8@/(CD>#:92(4.8S<E<'CDI'+*1RZ25B4['1[>":A*X5G9^?QO8>C-F<$_V
MUG<>-&(]QKIX,K83TKEUI7; 0EE0HZ!&IQET&T6PL5:$1(7 @L6(:V:0%D2@
M:'T(5A G\T&01[9ZV@9JD)XR73R>V@GIW+6S6\I.E3+8I0QV<7,[1,MB2.^5
MG>)B5,D9@J14$G$G&'*"PK\4H9CQE*MPE +315"[*J@%+?::EH?!A$>#%D'D
M+L7.(86E1=PJ OYM<$A[XHECT7$>2C7F(JAE6W?O/=T_5\X W7+>I[BX^\4G
M!V*TE$87I='%83:Z"(%S(S!#C%*'.,,&69P\HD%JR3BXUM2VX8C_&<_M12[Z
M,'V7MN:(TYY1N(.FU1$WNB@ 6 "P & !P,X H,/!1I\8HC87S>*$(*NC1,I2
ME[#'2H=6VD;O @"IZ.D]Z$IP5 !8MMR[&XBXV>GI<)++2WNGP[;(2K>,TBUC
M!QLS+# >M,:($0G&DP-#2#NID(S@>'/!DI%K%4>_N[W3-M(-=4]STGE#Z3BZ
M811 *H!4 *D TB: E$PN>YV;K@@6$ _@TEN7 L*>8^L<Y2RM>?/?W;YI&X D
M>JH 4D< J;1GNGM-[B-R!]LSR8"]E5HC$JU&G"D#QJ<@R.?6;IAK$4.7*UO?
MVY[I1K3BFQ5:<VFS+;5TNJ.(:6GE5%HY'8Z&:J>54PJ*6IV]Z13 /78\(F.E
M1$Q'[X2C2MNN:JC2RJGTHUDUQDU24A(54%1@3G/,:0[R<$2#B511R>I(SQ.U
M<EHQSZ_5I0^M-702I2M-:>CTM'O3Q@<1G$#>,X\XQP)I<%4!%1RA%&Q53M:2
MLUIKZ/34 L3Z=^],=X [.BA K;1UNFJH\*UN$C<:XMRW^UF,T:X9H^TT@I)<
M>V^Y0)'+C,94(BW!78Z4RB@YE\2ZCAJCMS6"LL#+33L38%UP0<^!6%D*_O?_
MTI3B%R^]G\SAE_CU/(ZFBZ8D8Q":"?C1DTGVL8=7D;[Z)O(B.]8KEF/^EJ@7
MTRQ2=4:+K3,'%FT^IJ<QSA[2-NVG:_V'EM^6%CJ5_?1I$C_9S*- ;U\OWP.[
MU=VU4E?Z<D63?@'VZ%)SF6\8*]]\TS;:3U).M5("J=PZC@L2D94"M)4 Y:'!
M\E=T[93>8\]T9X,E=Z*Z!+5K<?F6+!6"^ZI]4Z5%YFC-5FES3*U8^\<E0=I8
MYUUBB*ALN_OD0!J(A!&E:!@60BG>]CG7K4B0>@IG^= %:-EZY'MB6+='B,\W
M-1V^9S^NPX;#R]EM%/L%V/S,@7&W+,'=A #M69V;785YO-RNR$MQ8WLE/V'-
M'?K6EDK3E2_[56'0W/X_<R!7NKBC^QX,8&;ST[K$F'N@2(7@.%)K$>;<(RXQ
MF")<&Z2P$QI+F;Q;RTNCS!#JHT=>\KHDC4/.P=W8)N-!KSIQ(W!RK?WE]1#)
MA_$?<^ W<$$GMX13VC)+BE(M5LD6A$FZY"AV"B4L+.)<@3!99Y&GF&E"N N:
MK=64M-(G8B,*/FBXATFD#3@$ :P5ZZCF8']T2IC44T0C#UR8;I@;%?CGTRO\
M[%RPY?SN-M&=L(ZVMW"WY#ME,OP_5;4:+?QG38BO)_1%'5H,@TGC(.0^K?.S
MT8MK0=J;J6)],1C5[U\<:VJ^N#5F"2;M+8=;5IJ 7N:<?7U@&AFAWQ7R:K$3
M3-LK1?"MJW1Z>6IL,9-%8+@._S;==J__ #1NOCZWGV(3748VP41/[/"+O9@N
MFJNN+O^U-,)Z]:X88FUAVUV_+:57;UFL%KL?9Q9N7_:US7_#YY6MCR61Q2TT
M?59'\V]O3N\%=00GBJQ,#G&1RV,%[)$&P]<GJ?/)UC:B;[_%Z33&=\N8Z6\1
M<'GZ 9[Y\W#L_W%WU_>VXM.WK'=-@1Q#_\@_#NOQM-7'J6T.>?ONP^N*UQ!(
M ,U^>_WR_>OWCW?3'TW!;BB[-3>]6\;.:GY0SFY<V6?-C6('H]KJ:!BPC@0D
MZQ?F2WU%_)_YX#QO=U9?!K/3'#0 R<^W@QH^FU83._J4/]4[M8_T"I[=KB.$
M=![S"&ZQ%0EQ!3K")?!S=?+26Z&3,WC-DN?,$>HT$L: *VT<1[G$/-+88,,\
MA0>*A^B(/Y?3K3]]@"E?L\C1-/J3,)]<1#NY8_0N@&.N<SH1)2;O+Q!DG$[(
M4LN]!%_=6=G>Z']MUG.#L7>!6\GJ%N.UC<2;G[LC83G:]C1\CSE.7E&."'$4
MN" )9'7@* 6;K."*:>9N<@XXO<+GPDA$.@+8*#%R&!Q:'S67/'COB6J1[_.N
M_S2.[IB HH#+$=[./)&(YW,J1BJ+).5:)N(%2:J]"6S ^E?#[P(G$5YE69SN
MH1#TKXG [=P0M5"@K($'=%*(4P\&7#YZRYR+P010[G+MD--WYU7>X.67H[#*
M%LL33Q>_VUDN7'+Q(0=C[C(#JX7/'</+V4,G\)%TA)E^G<,,8P4_#\[F9PV^
M5\M:+HMP/3P ^4R<X3#3X7[3P+:32=SB%&]LCM0Y7S;;,,.<"W%RIQA=V:TK
M?N/*"+_EAC?:;C4@\QT<_I%LQE?TV3;B/8]V2[]%NT>XI9='V>J3;#<B"?61
MP#I4L'#;\Q#S.V!&^7(TM!?C^>*2RX2R/GZ^O#YOD=GS:3R9QG,+4G"9@=<<
M!JSO>W9K!9S/@^F@T2HGRX?<5=JF>;$P?<WH\]58P]*QKH,-/]UW,^DKO>FM
MF]XG^PS3E>(O:ML#./@Y/[*\TFU"^:B:2]\Z:0O7/:HP =F)BEH\_U]?P<UN
M,OC7WM2.IF +3@;I<?&R7?1X/U+*EI;OCPGT;];R_=*<+MW>'[H@NZN.\D2M
M.@Z:E$6I;%^I+/SRHE*Z(0?[UFGDL1;HWE3WO!;ED%THYE1LT8>3^S#Z&>UU
M[;$CKBOFHS*"*8*"$09QK#'244<D3")>FI!X6LN!_)Y"E_?M(%W&VO]8!)U_
MF<>W^37CX1"N^? E#C_'W\?Y>$![U<<(+SW)2J'+4NBRJ[0L0+*?0!(-8 +%
M$FGX#W$= K):4,25]9HX)7582]/;!$ANW:R] 2!/@!RLASM9MK(3,KMK%W-G
M/22.T\54W52UQ<4L6J;[YNGQ& 3@:0&&Y^/^!L!=2HN,(1BQ2+4*#HR"]=S$
MI_0LWXP6?N5_1SOY\&7<EDO)>D3H8AD<LLP6EW*O:7D83'@TP,&$5(XI0 K/
M #UBD,C9P)&/3$5-,:&N%>#XEB?9+DX4![+##F39H]R2 XEK!U)W4\,6![)H
MF6('=,8.2)(IQWE"(B@##J3#R$D%QH#'4@FJ\^GOW3F0N7996^V,54^08AL<
MM-06%W*O:7D83'@TT&&QLB1Z@Z+)1X1Y2D@'Q9%SQ$=+#%%ZK6+OD[F0+2)%
M<2([[$267<BM.I&FFSJV.)%%RQ1+H#.6@ E$&Q<24C;7Z_1!@!/I.3),4BZ$
MY-2N50;:FA/YZW@^:<N'Y#W#2F;K00MM\2'WFI:'P81'@QR!"V>XIB@Z#2@@
MO$:.Y?Q69F6DQ$F;UGI6/)4/V2)0T)Z1=S=]*2):]B&[MBA/ELC*<#=5;'$A
MBY8IAD!G# %G,-?8:H1SE4E \@0V0!)(F]QQQ7#J[%JWY^VYD(//K6U#LAZE
MN)@&ARRTQ87<:UH>!A,>#7)H$IC6RB*=!*! "!XYC0WR)&BL(^6*KE4W?C(7
MLCV@H( 3)=3841>R[$(^M0OYX30"17./F6ZJU^(^/IF&V:10VS[KH"WR\2-K
MX!VV(9&H9(DP<#PI28A'YI#V5(-1H(0 /]2&]0[D3^F"OLS:[XF\4,)[6M$.
MFA>;%08LXK\_MMN!N*H%I0I*[<;=9=IP+!"-P@%* 50983R2EAGOE2%6;67'
MM$:GQ\%2&GR- ?TS3L:9^P!UZ8N"2!T0]1WNJZYV5 %";]%)/EMI8(+[ACZ_
M-A:\K<8N[3K1XYD=5NF^%D1=T/?%NR[QN^Y;)4=L<S@%!H*)#,7(P7X@@B M
M?4"">ZR=$5+[5LH./M0S;BO$CG5/,]-!FZ,(Z3X3[D \W$[0\C"8\&B0@AE.
M</0")>4UXD$$9%QR2*IHC+/:BA2WX9VV=^"#D;(+VU&'LXU=V.)PMJD4L@%W
M4KW)&BY.9]W4Q<6W+#'Q_;,I2DR\7I ?'M/X^A%V#;4I,8LC"B&G)Z=LUVCB
MD2;22<Z5$](_N0?\UR@,IAX0<!;#ZZ\>+GUYEC^U5?="]@SIHC>\-Q'X3=MJ
M_-@%#=,)"AZ(ZUR L #A80*A#4(YZGFN%BP1-PE<+RP3(C)A(8CGS#Y=W> G
M!D#2PUH6_.L2_G5D*[I^S6Y" Z2O!3N$V$"S&=WL/@\7$CV(90/ZN(,$M$^S
M.@OCN1O&;EE'>]TD;S,J'Z"A=,<^1>(<1TZ1$Y@A+G/)$2[A7YX:22,75K>R
MHWV')]]:36/2,YT\37PO^W7+:-E')Z@3A#M(7[W@4<&C'> 1U8DH3"/R$0=
M(6&0D3G23)WW3%-J2"ME^&]UJ]LL;='%)FW'"$9W.LYW;Z/?QM>/\J"?Q#<^
M>' K;NRC*0N,G7_^]V?TV0ZI7-BS$*X0;N_$]M"58Z'L$U"VE"+MZ*[#;S?W
M&RI4^?ED K]VP2TNLK-%/["#W+UG49PCCM 8S4AB(J(@C4?<6HJ,$AX1AXD7
M#M-@[1/N&+QJ=%9;H1K34Z:+Y5\Z(:)E1Z"[/L+1,&'!B?W$"4*,XE*"SJ=>
M 4X(AFS0"@7-I!18,VW$DT7RVT4)VI-,%) XW,-OQ77\7M<1;D#%?3Q.][$D
M]9>D_MVTQM#1,\>1LM8@'C%&1B0#GF>*.@:BA6ZEN^(=GN?;\<BWZWP*VB-[
MD"C0X43[?93Q3A#N0#S4 D4%BG:2II:T9(QQ)%EN].M$RCU^/9(B")&$9X+K
M)W-NVP<BW!.&%1SJ@(!WY)Q7J0!33GD59[EDU>]+G+UDU=]KKG@P,(CGX"][
M\)>Y=019RPT2DMM@.<8A/J7G7$YY':"ETD7 *AYSP:."1]W'H^1Q3-0X)".3
M@$=<(, AC3S304F: J6IG/(J8+29VPP?+$SV/^JUR8\8C.9VL3AA\/D_EFOV
M=GX&3H5??EO_<>..!;]&+930*=>Z2PIQZAG2CGC$G(O!!&R%%!_IL[O?^ #"
M2OBX%;BZ>OM]KWO4TN0YPVIDDB['\\_:G?]Z0E^D8?R*PF 2:X$!<@WG9Z,7
M83 ]']J+D_SK&E?W!?!G?O\B"M)\\??Y=#9(%\NAU+>B. HOSL?30?WL21S"
M,GR.(!-?\[SS7"[%X^L#.9[0S5?F2HUOHF';7BE";EVET\F-0,Q@-!R,8$@S
M.YF=V/EL_.+Z#T#CYNMS^RDV\294MR@]L<,O]F+ZXME/-Y?_FL:K5^^*(=86
MMMWUVY(5N&6Q\D,[G>85@]L7-]5_P^<X>793ZL0M-'WV'ZL+]!USN$3UA0)=
M@KHR."B"$:49U)GDR 63$#56,^Y$E&HM,1A+%7EBH$Z588B#CXJLL!RQX+D4
MB5+EUT#]E^AFOPRF?CB>SB?Q SSLY^'8_^-9%0''S^'"V60>'\8:C]:Y]=1'
MXUG\*#X&&->&@OZEX7XW'H:G8::W[SZ\KD15-Q<C+ZI?7O_\896S;N<#<N/U
MMT;D[F &09UW 6PT)AD!"R]:I(TW*)>()=3D=,!6F.&]/XUA/HSO4F:+-Z,I
M+'Y=^_X!?+$:9.9]P=CS>R+-+</SKB#@Y:QZ3,'$MH?SNYWXTXJ17D4Q%94=
MA>J7Z..9BY/EM[Q79<G*O#(=3&<Q5.-TLLJ\1P0!EQ9N;>#>MGU2P_("(O,0
M\SM@1OER!.;5>+ZXI'D=P;B/GR^O!R88VO-I/)G&<SNQL[BD3.,CU/<]NW5S
MZO-@.FB<JY/E0^[:=6I>S&2?&_9\%=>7(%8#^T_WW4SZ>M,[55\)N?W7;GJ?
MZ%.BMOW2S:<)UIO9^.:M4U?W%=/XZK^-"?:@^QZ9W;SUFB0E&EL(]]CR!?P)
MRA<\,BUI29*G)/OCG/XU7V #0VK+C+U9FDXG5J7HD:)'BAZY6I<U[ZNHDFZH
MDF(_[IOZ*H3K"N&*KK\]%@@$M)_BO[G)3_^Q;%58_6EGL3O+TZWMZGTO_5;D
MX-9U>3>?36=VE"=>R\+/=IBS1O9""CJQ//N("<>B4(H2*6!:P+2 :0'3 J:;
MAQ%V5I^UXP#>[I'!.#FK?AO;41<RV#M!WFZ<N3C@.G '3."C9=?#*"NWU\=_
MNBKNVSAJJJ3SW%C$<F5@SJA$U@N%&,7,:.*YIVM'34V,-&!BD+4LY.- "1G+
M+>+>8V,H3@:[V[* K](]7]G)Y )&W&H;9(IQCXHNGC?MA(06F-AKF#A@-7?
M!#Y:=CT,G5FLFOVT:B1/#AL1$';"@%T2 M(T:?C#,>>-]Y'&FU8-@QLLC?F>
MIH%E0$9BA5*@,F"7C-6V6#5=D]!=1]IV5LZZX^O2JI#_$H?V B3SEXG]4I6P
M6S<1_X 1ZX )?+3L6N"O.TS8#2G?@EW**(^<*8_ !%6($Z60)MPC9Y))C*BD
MUX]92^IB\,PA$15!/!&9R\(IA,%>Y9)&X\0NHFU$\![0J=BEARR81XL.!ZSF
M#IC 1\NN16=VAPF[(>5;,&:B84J(F)#V)B!.<W^7)"121G*LI.8QDK6J@%A;
M'91%-GB/X J)'',*.9E\U%H+JN1.C!G94R7(UM4@6TEGVT*0[<_X>3S\#)=5
MKR8Q#/:K3]SA0_QNL:JMU@+?:9%VJK= :>6P7S9M:395FDWMPBY6-A(3+4,Q
M6(4XQA1I&C1*SH.=*:W5:2VE#A/J.87+@\4$<1\Y<MXF1'PD7#&6@MG%YC,1
MN*-!OKTY-[6/XMT)PA6SJYA=Q>PJ9E?1R\7L>MA)!B4#EP9A+37B(6%DP:A"
MP>#HG3))L+4F)81'077$2&N<[R$).<(L(C@&&@3&+OH=F%U"]6BN"EBLKIU+
M=TD+[&[$LEFZIG.GBR!1L2D]/IA.Y_D0.PC[=+9?+3R+0?U8@[K[A1H>@7%<
M)>]8U,B:G-<>(T568HN4$]%0[0"T7%L].ZXP;ED?)9='^64^@;'_ ;;I.%Q#
MN_/Y)%["':*K>/=-N.NK.['NR0C\O)N<?+1ZH>R4=H<)C\9G,,):J;1 1/F(
MN*02N104PI')Y(5D5/,V&AMNPV? O)P3.G3!/%IT*%;C8[2<PL8;IY#TH."X
MX5EC.8H(9M8&9YP3:UJ.P6].6X>B\1;QE,"/93&A2"P'7\MY>-9NK4;9E\5J
M/':]4,"I.TQX-%9CP-8'Y26*+K!<,P<\:D\8LE9[202UV,NU2+-(QGM)D5#Y
M'DP(TE)'F#4E@>0D 9-V8#5RPCL::CXLP2R)KUT/(_\%LC<&&OPSAA)%[CSN
M'S" '3"!CY9=2U)%=]FT)%74"_+#D_O.=QR)]XP)3CPRE"64^\XCS9Q'@BKM
ML.<^B+5LV<>'8%?0/O>FSQ;U'Y-X-IB?O1R%^M(%^K_*X/\VME;-J4?QW6&+
M3NJ7;B5V;%J1[<<NJ)I.4+ ;B%@,N'TD\-&R:S'@NLNFQ8#;J0%'E)5&!8>4
MSC7 :0!C# N*! M6:.H]3J;]:.CN##BN:3'@NF3 [3!%MY[K8!1@B"= \>T"
M\(+PS6/[ACZ_-IP%;?<L%ELG\W8!5#HA*]VP?8JIOH\$/EIV;1E*:9]F+ WC
MN1O&;AGK>UV=?C,J=T-M;,&JIEQK3WQ"-CD.5K7-);,"1E0))FB*2I)6PJ*_
MC4>?<D7M;#*WEHE*>YCSSAO)-WBN6V9R :&]!J%B,^TC@8^678O-5&RF_;>9
MD@M84#"71! 6Y<.-R'"<D%;14BR,%JR52.03V$R<D)[BK-A,G;"9KD44X8.%
MR:Y,9S7,QON"L>?WQ-HD?-P*7ER]_;[7/8)&EP2IZ7%;%-+.9^,EP^0AYG?
MC/+E:&@OQO/%)<WK",9]_'QY/>B'H3V?QI-I/+<3.XM+RC0L5=_W[-8P[^?!
M=. &P\'LXF3YD+OBM\V+N>[K_-ZOF69YC(M)PR)\??'LI_MN!?ZG&]Y*-GTE
MZ6N^[7?N8)JX;XA9^6_3)7K8 !ZY:7";%#YJ)Z&8L1N:L85PWR(<L&[^^=^?
MT6?M$_&1F^_=/W?YI=$';CP,W[$NO]N)/ZT8Z544Y^,U6V7LS?:".[$J18\4
M/5+TR&KG2Q_/7)PL50DOJJ0;JJ0<Z.MN$LFK^60"_ZK.<X+8>%2-4S4<9P+F
MSK'Y;%\78GF=(/N!1)\[0<N]CBP?<=28<<JL4@PQFMM8<<>128$@XE*BA*G(
MPUK=V,?NM"\TU&;!XS3X&@/Z9YR,LP1J2NB+#L:-.R&395NR ,/.:5F 83^!
MP840P(+WB&&N$!>$((<91MIHE7#B+-"U_H:/W4XLP+!GP%#J@W?7#_SMFM-7
MH0JN1KZ1L&[JUH+TVXP?[K/>*><KNV$D!!^$"-0BB6-N@FPU& F4@_<8J)8B
M2:%4V][CV_'(/\9.V-N,[0X?:]Q'P>X$X0K^%#8M^+,Q_NADA%0.(R(4.)Q!
M<F2ELBC%[+!&0!^]=D[HL4YJZ_BS+]FOQX _.]S8+*?IRVGZ8FF4HS9=X-AR
MU.9>LP,+Z[1(%%D>,.+"6J293"@P'H/+!=#EVE&;<CRY'+4I(%1 J(!0 :%V
M?%]'.18,(TM$S!NT%AFC,%(\>:$LB4ZWTH>CG/<\<!"Z_;SG8FW>SL_B9.#A
M<QA\[L@IT(<*5]MG0E].<S+M]<,MO6IV&JM7XS,8WT5U:D/UF$*4;8_X7VX;
MS'>\:0MJ+))D;'(!$9-#>"!>2+L44&0JZ)B(8<G?5&,!*Q4<]8A03!!7,2*C
M<N-*^$Z"!1YY^&8%]/DTAI_'D\GX"PS\E<WG=6<7W^@N)*]I.?$M+<=U_VY#
MNPOL4<']0QA4I\8$(C:O5Z=RR^6I_&)]X!=0S[7([0%K$T!HKK5$-%!P$T,P
MR 4A4? I2,Z9U&(MA6H3UOYM,(KOTJM)#(/9KT"G?!C\=_MU<#8_6^/PA_'V
MF[>_/OL/F4^H[P7_5I/X>3S\G#EE"+3(+.1K:BSXQ2X_VD^3&+/\5U\&LU/X
M/H=QS^LC$C%?.:U^R+R5T\<H?M%0M%J2M/Z6O/BQ7WV :^[FT<&T&HS\<#X=
M?*Z',I[/IC,["O7PXFR67W,UPEF.4N:?ND38/1 N+96-,5HD H@'=TH@9RC8
MP-23""8Q\UBW$H-I5FPI7^^N%K-5L" M]_,\!JAH!-&"<6\_19"YIN-JE<MG
M5, GEZ(Y78&-&S)=?;'36R6O6\Q.$V$^ HAX'0$5(@$C20"2"&-]D H^J[#6
MPU9*%U2P*%(K<P];@IPC"EGGK;%21$"4AR#)4W>R%7W5:<Y_WJ7!9%+6?#P[
M!22KSN"'TVF5L2O<<$PJ4%)[P-F$&X:QI2APE1 7)B+'&0%&E\%Y0TA,:YP-
M!A*AQF&$B<S2(!TRVBM$A?0N,$837X]B[("SV^[1?"2<_24./]]@[;6#X#TP
M^:;G$6CZ.0XO^M6;58,K/V4 #KF?Y4]I.+:S)F"$ZC,"-Y!B^L6>@]TWC9=V
MW]LQ?*T>99"MG7=OOSZ5IH2\Z-0*_@+2\]GF):FN/.UIK8C^,X9/V<A]F5=L
M,!O$Z=*:;@(HMX/X?H"SX 0+&3$*)H(E&KE'FA&-4C R1A$B,6MNGD@!KN$<
M,6W@GJ0Y@HO!F(U:.T6\)V(-G*_(^VMFXU7MU1X6DZ*QCA:+F4V!IBB1)98A
M[I,!BQ$S)$.T7@DOL5K;4<@[X8Y[C(S! 7'M@?F]BD@!(CM*/=7REE#<%ACY
M[MV%+O!.1QEY ^A=W58(@\^W<#:Y,=!_?66' S<9_&MO:D=3- 5N2%<\N=AP
M6+"DH48J<%@0 =\%<<(HLEHHE+0Q*02N<5Q+\,3@$/'$P$52!MB8>(ZLL*!J
M@\]542E5?HTEW_O3&.9#,!%_MS,P!3-"O4NK6U\?\K;(!WC+S\.Q_\>S*@)?
MGN>-D,D\/CORC9%?YT SL*061 S (>?VHD%_L,#J\V?G8%_[P;D=5A8N!6!/
MX^%P_&5ZLLI G:!B*3*ZEOWZW45&F>QCLG'=SKZ2FQ;2W/@^T1=4;ONENY@H
M[QM]#!,U?4VW73EV%_/4?8G9\52+!;VRW5)[S0L[4=3M::OM_;&$[#"/E;OX
M_F2<)UR:NU)O.K0X':A!663CJ60C>P'5;V,[*E+1.:EX"J(?-4&+FME=P5OP
MX6) OTSLEZKHG.Z*R-9TSAT$)#LYI'%? *^HH,-007]>IM(UF^5%^1RO\CD6
M@A9MLS._:K,S^D7%'%YM_X; 3WOJ]5Z;:F\*6UQ++I";2L^!4GJG^/N4I6([
MPKL;'"+H(F<>X#'ARZ+'A7>W6*FA*-.B3(LR/3AE>D>J+Z;!.291X%0C[@Q!
M.F""F*%<)*R2X?1F.IJD+@;/'!)1$<03D<CXI!#&1G!)HW'"W5=SX2HA[<_+
MK*IWZ8]E.M6;T=O\KO$P'R+\4"?P_5[G[W6IBOX!"_01(,RA!YN/C&,+!.T'
M!!5[_BBU;;'G]XFB19GNAS*]ZUP]MM0JCU@^>,R)CLA8SY$7-KE(=)*Z]>Z'
MQ9[OM$#O>A_ET;VQ#AK GFX?1759(1=3X0 H>DBVZP%:",7=.FR6+3KT "AZ
M2 QY@#KTCEV3E*BEU"+M<KL$PAER3C(D*#'"2,F(YEO?-5EX6/\=[>3#EW%Q
MKHKXELV2 C@'S;$'"#C%:#]LEBU&^P%0]) 8\@!UZ!WUM85.3H6$)#$!@<EM
MD4N!(4^9,2XQXG3K/<Z*T7[0XEM.EG1_1^2BDLUV2/7#0AHO?NRR/BX&PO;/
M)>ZS#MHNRS[^X.=A&QE>$F6#]4@GBQ&//B)K54 *"XZCX]'XM28>)D8:,#%P
M)0/#Q/*$C.46<>^Q,10G@]N+#.;*OBTUO:,8]ZBXNZ%.5S7!_0=BBRXH\-5!
MIBWP5>#KZ>&+<\J$B!F -$?@_4JD"0;WEQ/BJ-/:.[?3C:T6X8L(W@-"%O@Z
M4EU0]L"ZQ-4%WPJ^;:$Y5V(R2>R0HRHBKFQ"6FB&B+&>,.5C('&M^P*AGE.K
M4+"Y@:F/'#D/-Q(?"5>,I6!L-_$-%WP[8EW0%?(5]ZRP;(&O5N#+2&N-5!AA
MXW-K^<3 /8./BC@A*7,DN=UN8;8(7P+S$EWLE"XHY[^ZOMO9+."C2E >*)D/
MU0BA?9IU3QC/<WNMKIDA^WZ6?&-:'XU%PAR.E#""%",4<4H,,DI9I%G"$8P-
M'];[N&^RWYDMD:L6O*_L9'(!(WYY!D S.[[MS!N<>+@F1P&K E8%K I8M71L
MCT1O \Y><#*(:X*1-40C1Q- 3] &X[7H[R:[FUL JSW:O"Q@M7.P*MN7!<T*
MFAT8FE$<0N(J($G!@^)6@.MEHD$D)B\PD=:EM=*]F^QE;@7-]F:KLJ#9SM&L
MN%X%K I8[1=8Q<B#4N!P)>-S8BGX4I9SB9PC!/PP38)H9>=R"V"U1QN31P-6
MU[8FX8.%^?['<H7> B],!AX^A\'GN[Y]P-0E?-P*U-1O-]]XVV-H5\_X&AF6
MQY=BM Q;@Z+E"O'H0.1BHD@;03PUVFN\)J98JL@38T@KPQ G(-]66(Y8\%R*
M1*GR:V+Z9_P<1_/XZV1\]@H>ED7H_QO,3E_-IT"Z./D 3_]Y./;_>%9%D-%S
MN!,D>A&;&<"-X>7LH</]2![&V(]>W9J$H_$L?I0?)\W\X&\__@1*!_3#ACIW
MK0OAU>#;X8ZW[SZ\KF15'QPG+ZH_7__7Z[=_O8:_7[W[V]LW']Z\>[O*.=L7
MDX<2ZCOH4C_Y9#"#E_KOH-0O@ZG]]&D2/]D:V,:I6K#QDD#='';U(,F/$CMC
MC4+"$O F90+/D!+XP[EH%+5:LK629IM(_G4BODL+$G[(&ONA8O^0L5X7^YK'
M!J, %#GA?<'8\YO4WRL&?E@GTM-8O1J?P4@NJG!%=7C:0CM5"=1OY8>#G-)5
M#4:S<>7A]T_CR0 NFIU:L!SB^<#/JM/Q%_@<82EG\TGL5;:VI^#O40";RH-Q
M8N'VBRP2RV?GG[R=GE9I./XRK>P$ODHI^ED,E;NH0"^.QF? ??DZ-Y\.1G$Z
MK1+@P'@R[5<?3L?3N#J:?'\ST@K(_X\(+U]\G%V<QV8D?H$DU=G@:W]+,OG]
M$K@93V[)R6U[YFNFQZ6-5IMHRP$MQE^;NW8^&R_-V#S$_ Z84;X<#>W%>+ZX
MI'D=P6"]/E]>#PL\M.?3>#*-YW8"W+.D3&/HUO<]NS6%[?-@.G"#X6!V<;)\
MR%VY:<V+F>Q3G5_\-1,M#W(Q:UB%KR^>_73?O:0OY::W;GH?Z1NZ[7?VM_Y&
MVF?*K/ZW]2F7E3W4E>4/NO.12;*W:>;'9LZ6J.RCHK*%? \@'[!Q_OG?GQ'P
M$IZ"EH\_&K*DS/;;VV_LZS_0SI_$6#4M=:K78$^&ZK(/R/9Y?N.3$9U8J:)H
M.JQH"K3NW9(5\K4(K;(@ZW:1E6(J"H(6!"WZI.B3EO0)+_JDZ).#T2?%(M^[
M)2OD:Q%!:4'0[2+H+WEO;C(M(%I M*B4HE+:4"E_Q$E^;5$I1:44E5)42K%2
MBDHI*J6HE(ZIE&*E%)5R:"IET^YYP'/)E^CAXTX;;*:&7C4Y][_7*?C3DR(9
M>PRV16L7@NXA08NP%][L*F\6@A9A[ZJP'R8I"_D*^8H@'P I"_D*^?8I"M52
M5Y/5(@ "7K1183)XWD;KMWKL'M>GB%>'@[=5CJ#5\F.O1W'RZ:)7Q='GP60\
MRE7 >M5@E"8V%P7SB_H5HU"7Q)B"^5SE&CU T(N.U)([#JG;9DVTKE!TWZL<
M?LOE/>P*AD3X@*D4,&1I$!>$(T,#1DDY1N$[;<):N5W.M4I42^2()(@KDI!)
M^0^&0[#12"[D=Y9&>_W5#^=Y&5Y.IQ'^%S[8KVTU0&&Z)U1'"QMV18AWH0$+
MJA14.0J&/!HP,4&:Q(A&B@:+N)4!:4PDDBHZ83V7R:J;8"(H]R0)@U),<(_#
M";EH C(D,A^##9R%FV "")().:F+[?TYF/YCD4=B/T5R#37.P2Z^A U$5W&#
M?@,VN"F(\11FW_,N2VJ!C@.@:'%(]AE#/%/$6.F1X%XA3E) EB:-//?2.4Z%
MY6NM%Y47.&HCD(Z6(XYU1-8DA61@T5HG/!7?6ZOY*1T2RGO2T (OQV+_%50Y
M (H>$D,>#9@XF3@';$")^("X 5@Q2@F4!#5&:)*\TVO1+>J"#@I<%\8QXH&!
M0T(B03HPI8D*/BJZ$X=$%,0H#LF^0\<CL^/+OF2W]B7_,]KA[+3>>9R._< .
MJ_/)^-/$GFU\3+!(53'(BD%VJ 89=PI+2P,*U!'$9;1@D GP[C4E(6"%G5_S
M[EGT0<9 D6<R(4YX0 ;\>I0DT]2[B&G2W?'NB30]3%FQU8Y%=@N8' !%#XDA
MCP9,<!02O/&(1"02<9]S5QSU"!MJC<'$L'4P(40DH94#[SZ"=^^91Q83@JR*
M@$T**\G]+KQ[5KS[XMT7Z-A#BA;HV$/H< '3:!5%*?@(/@73R"6>$+%1I>0$
MMWPM,!PC95HZADC0 G%M)7)4*[A164>L4L2Q#ODA!O=TV64\'MDM8'( %#TD
MACP:,)'*2V6"1-&!,\)E"$@[DE#P1 EO J=RO;VXC4%);U TDH(?HA@RFE-$
M51#.))ES\G?BAY2TQ^*'[#UTE-./![7+^#[Z^60PNZCW&<>STSBI_.#S8#B
M]_UO>W;^ I3K&9C3>0.RR-F!FF@;5M$L1MSVRI0>MIEG3.Z<YC0""\TC'@E!
MC@2.HL5).J&DTVPM,UD$2;&@B GN$#<N(!N(15X*3A71EL6U9++=Q0PT[M6]
MX;IH &Y<L;4H@()9'63:@ED%LYX>LY+Q5$H;D$A2(JZ%1):(@!@17GFOL(MB
M+0$Z<F^\$<BK"#A'74*&)H\B)DEK3B*6:\?[MQ&:(+(@4PE?=(..!:(*1!6(
M:B>+QW.?:%"(8Y409]0B3:E&CAL9K:0:/*<UMTH*YP*-R !^P8W"(1=81(2#
M_Q)B=!+;[KA52O>TZ.A.[#Z!UYXJ@*Z0KV!68=F"6:U@EK64<:8D4M8 9CFB
MP47"&'&E,0/GR4K&;V)6$,H"1ADD!=,Y6]4@XP-&07BJG$B*NEC<JOU$IN)6
M[0-$=>?L:?VF;:_AZLXPZ6O!#F%K^,-X5O9\C\30HWV:02",YVX8.V?J[7O9
MJ8UI?316'V'&"LLXDL;37"LW(LVQ15PGEXBF0L:UI'$L5>2),:2588@3SQ$\
M@R,6/)<B4:I\ATI3<:UZDNA], AO,&CG3,(]]?RZ0KZ"885I"W2U!EW"6*J-
M#(! 0B(>$T"7P0!BU%,3.98FK4&7(CRR9!G"SL,]V.28O"0(G"'EF&0FJB<Y
M*OOF[:_?"EG@CI9SWR^(*E&+@E7[BU7%WSITT*(8<X,Y021: " 2/3).820Q
M5PQ+JJA82[C56 ?& CA8AD< +0+WV"!08$E9I@)/,77(WS*\Q]E>!."[#F9[
M:KIVA7P%PPK3%NAJ+^^624U<3E B#F"(\?PO+9&/@IC@)5&<K&T0 [8QG P"
MQ0J>F1(&&4T58A'CD)A@GJ_5N2O^UAY!5/&W]@&KKNT2PP<+S+0RQ]4M4]X7
MC#W?UK[IW=.^>O=]KWL4A1KI?SL'>WC@X7,8?+[SV_PG$/#?X._EV/]9D^SK
M"7V1AO$K"H-)K-7("<C$_&ST(@RFYT-[<9)_76.]O@ ^RV-=[-,W7_P=S/-!
MNE@.N[X5Q5%X<3Z>#NIG3^(0].+G"&KB:Z91GO>EQOCZ0,XE]!MDO6<5KS!N
M$_AI>U4)O;:BRU4ZO4R#6,QD,!H.1C"DF9W,3NQ\-GYQ_0>@<?/U.:!,DQ&!
M;(*)GMCA%WLQ??'LIYO+?UTWY=6[8HBUA6UW_0Y'!%?%R@_M=)I7#&Y?W%3_
M#9_CY-E-J1.WT!1FMK) WS&'QN3)+QN,YG:U<T^,EF%K4+1<(1Z=0":"):.-
M()X:[34V'TG[[XT2.V.-0L*2A+A,'#E*X _GHE'4:LEX?N^E3J]5^FU9,357
M+S@L+W)>)>")?#D"[32>+RYI%@RLHCY^OKP>I'IHSZ?Q9!K/+=AC<<E;#5K6
M]SV[-?OH\V Z<(/A8'9QLGS(76E%S8N9[%/]?%4JEBQ0B\5/]]U+^E)N>NNF
M]Y&Z#,5VW]G?^AMIGRFS^M_6IUQ6]E!7EC_HSD=6O;D-VQZ;]%B<C4?%;0KY
M'D ^8./\\[\_(_S9D]#R\:<AEI1Y2NH_SMGXTJ@(-QZ&[\F^/9W$6/T.GT^G
MU6NP-4/UNYWXTXJ1WO9Y?N,3 YU8J:)H.JQH"K3NW9(5\K4(K;(@ZW:1E=:%
MN J"%@0M^J3HDU;T"2_ZI.B3@]$GQ2+?NR4KY&L106E!T.TBZ"]Y;VZR<5_C
M J)%I1254E3*ZNHLDC6+2BDJI:B4HE**E5)42E$I1:5T3*44*Z6HE$-3*8\L
M!5BBAX\I[+>9&GHU', _J@\7Y_&DB,4>(^T1D;*0KY"O"/(!D+*0KY"O"/(!
MD+*0KY"O"/(!D+*0KY!OGT)'R\2S%KM(B!TWD<#UZ=_][R'Q5_]]OTHQQ(D=
M5I_&0*S1V2,"WJ7J3L<KQ'6%HOM>P?1;>R^'7>)-.F*X5 9AEWN *>&05BDA
MX3!W-$F7>%KK!J$9TPD[)"SEB'-&D$N,HYBD,=H&XOA::^7=52>ES/0D[6CI
MMZX(\2XT8$&5@BI'P9#' R:*:DD30\P)  8%F&"L\\@J&:23GH5H;H))$I%3
MK0/"/K>>-%HB[;U$RFDO??":>[*+AI+<%,0H94 +=.P?18M#LL\88GD4R>*$
M*$^J:4]GK,$H$H&32I)'M]:4V%-&=3(*$4PUXC9@9%F2*#D=HG",*"8ZY) H
MWB-&%'@Y%ONOH,H!4/20&/)HP"1YYE)@$4D? P #N";.4XNTY"%PX17V<;W7
MJ0DD<(:PI1$ B"=DC7#P")UD4@QCMA;=VH9#(@IB%(=D[Z&C.]WKR[YCB_N.
MTYF=Q<J.0C4<^[+_6 RS8I@5P^P>PRSW[K7,<(0%N.U<18,L5N#J&TJ,MSB:
ML!8IYHQC+RS89)*",<<]0(',S8"-(1130XU0W?'RE>QI64RVHQ'=@B4'0-%#
M8LBCP1+)<8P</'0JJ,C@()"-UB"I<.!:$RV(OXDE,5E"->:(T 0(0JU&.C"-
MJ%2&<$RQ3G073C[I:!?=K@AH<?(+='23H@4Z]A ZO)%6)JN0(98ACC5!UBJ,
MP-.PS-LH@A,WH<-03;RQ #=)PCV>4:2I ">&1Z4C%IZSV"DWQ A60.581+=@
MR0%0]) 8\FBPQ+B$HV$$? @?$7?@AAAM"=*2J&A$))BO[34RXC4G1 +T<(=X
M\@%9)CA*,9 4([44%S>D@P):W)!]@(YRQO'0]AK?9  9U9JO;#(>@T6V83W+
M8K-MKV#H@5MUDHID(D$"*X]X &\?C#*") Z)>>T,<?JF56=3P ([CDB(%''M
M+#)*1Q0%$2%:ZFZQZG:9CMS#JJ,;E1O73BT*H&!6!YFV8%;!K"ULB&+'B+ &
M!18TXH1*I+GGR$5EG:-*!&;7-D0] %T,&)F@%>),)^1\<D@HYE,T0K+$=I+U
M7("I!"NZ0<>"4 6A"D*U<\@S.1P)=<CC !X2HR8?R<FQ\LBE-R0IO):RPREQ
M0>:",\D%Q'U4@%#&((*Y)L'$I(SMD%<E>E1V=-]UG\!K3Q5 5\A7,*NP;,&L
M=LZ2.NN)YA0)+G-Q&P%P19-'"DM"37 V47P3LXAUA'$O4>".(2Z31=9QAY(&
M3TPI> 99.[)0O*J] *;B5>T#0G7GN&G]IEWN 9.^%NP0-H$_C&=V6/VM;/X>
MNLG7%8KNJ4%WW.::8LQRZ@/" 8PTSKA!E@:)%&?!J20MB6OI>,)HC[FD2-I\
M*DAY@\!:<T@X)IPW,3FQ5HMP=R$&QEE/R%+8]FADMX#) 5#TD!CR:,!$B\ H
MIQ0Q8VUSYL?0\/^S]Z[-;24WN^CW\RM6>6?>FE2I.7V_R$FJ-+8\\=D9V]O6
MY#W[DZNO%M]0I,)%VE9^_4$ODA(E2K)$\;)(]50E%LEUZ48#>  T&K H$.R9
M2<X)O5"4D( +D8M/(6IT+E= +#+<4A0C5X;(%)G82FZW*HA1'/L"'3M(T0(=
M.P@=5IH874: E CBF'#P*0!$5% FDA2)$ L)I,$[DXA(<)%+ #<4[K$R;Y0J
MXKR4FO@6;74R)0\X(055GHOL%C#9 XKN$T,^&S QDBA/)4%))?!#K,?(4291
MDI)'1D0^6K!0S]8J;XVFR"KC$,];EIIBC10Q2EA!<3+;\4/*&=/BA^P\=+3G
MC&G98%R5[GTU. .+V7=MKXC2GEIA)9NL9)-MU9)C3FDK!$4$/'MP\85 1@B+
M: 1;S46MZ>+VI-)4"<D]HH(KQ,'F0YI9@T1P@7AA220M.E=*.#_ 0K?3R-NE
M3+,=U0!M(5\!K<*R!;16 EHQJ(AQ,LAZ@!WNC$96<H.42Q+0C#JL%GNS618P
M8QI)PC'B7#GD@B((^\@B<](X[K81?F MW0;=)60J(8H"406B"D2U"**$E)2+
M2) R+&^86HLLQA$Y*P(QE$6%Y>+)4IQL2!8UI8!YQ!+N<0G9&(R@P6CL%CJ^
M;=&O(OH TW*"Y[EJ@+:0KX!68=D"6BL!+1>TY(P(%$A*B!O) 'M<1%9(YSR5
MAF.VL*V;]WR#=8CGB" W02.32$8[KH)7-"F]E8(]E!=D*GY5.^C8RJW?=9PM
MW79]8=I1:B^V?INSI46*GH6A1SLT@T 8C%TOML[46Q8#_M02[EV:UL_&ZO-@
MKBGL)>(\=S'%PB,+5AO2,1JM#*;)+/1 Q5)%GAA#< %#G'@.1J+EB 7/I4B4
M*F_:$ZK@6AU(LA-;P#<8M'4FX8YZ?FTA7\&PPK0%NE;7OELJ(:2PR."\$2PC
MP)!4&$D:@U;2ZF#40O82X9$ERQ!V&?.PT<AQ21 X0\HQR4Q4?AT!B[?OWOPH
MHHYW8B^X[1!5HA8%JW87JXJ_M>^@106+CI*(.,T-^I(6R!I*$3A-$=PPCA5.
M-T%+8QT8"^!@&1[SZ5V/C T"!9:492KP%%.+_"W##SAKZ;FJW0*S'35=VT*^
M@F&%:0MTK0RZ,-&>@LN5<8<@+I)%3F ,OA.)1%N>:*(+122<PBPGZX)BI;E>
ML4%&4X58Q+EWF6">Z^)O[3!$%7]K%[#JVBXQ?+# 3'-SG-\RY1W!V$^;VC>]
M>]I7[[[O=4^@T"4Y&FK<MJ%LQZ/!3!SS$/,[8$;Y<M2S%X/Q])+)ZT"A=/!/
ML^M!+GKVO(Z'=3RWH,KBC#(31FON>W'KQOW7;MUUW5YW='$X>\A=._*3%S/9
MH3J_^'LF6A[D=-:P"M]?OOCEOGM)1\IE;UWV/M+T =[L.SL;?R/M,&7F_]OX
ME,O*[NO*\@?=^<2J$+=IYJ?F"Q6<?I++4\CW /(!&^>?__J"\!=KH>73$XEG
ME%DG]:]\T67<Q&\3%>$&O?"8Q+7388S5[_#YM*Z.P9X,U>]VZ$\K1@XVS_-+
M)]NV8J6*HFFQHBG0NG-+5LBW0FB5!5DWBZRT.6Q9$+0@:-$G19^L1)_PHD^*
M/MD;?5(L\IU;LD*^%2(H+0BZ601]G??FAG4!T0*B1:44E;(*E3+-<RHJI:B4
MHE**2BE62E$I1:44E=(RE5*LE*)2]DVE/+&*5HD>/J4FUG)J:':JL?J]^_VP
MR,4.0^TS(F4A7R%?$>0](&4A7R%?$>0](&4A7R%?$>0](&4A7R'?+L6.UM!\
M>]L%V'%S_'</ZJ_#6)"%I3JSHSCLVM[2^V>E6$7+"RNUA:*[7OCO1_LN^UT9
M20NJ \48N4!9KHPDD786(Q]"T Q3RH1;*.K'J)+2,41IL+EZK4<&)PL?4_(Q
M*N*(:D]1/XK- >8M+>K7%B'>A@8LJ%)0Y5DPY+,!DZ1"PD9IA!D&, F<(6,M
M1\%[QCGCR3)\$TQDBMI3PQ$UN7>;5@&9H!QB!E-FN)$>TVWT8>.L($:IGE>@
M8_<H6AR27<80XJ6)D1,D3'2(NXP'EH"OD03W#(!"1;W0&D-I&@(X)"D*!1AB
M!'+),"2)LM@;"U[,0JG6;3HD\H"( B_/QOXKJ+('%-TGAGPV8()Y5-ISAYRC
M  R !L@2XA#!@5DB),-6W 03+GW0Q!+$,J)PFB1RS#JDA$Y!"N-B%%MQ2&A!
MC.*0[#ITM*?I<]ER7(WF?=/]'@,Z'W9]+))4C+!BA!4C[$:?9A6])<$@*0(&
M(TQCI 7'B.+(!'/$^\ 7//HH DE&(I$HR5$  QX]YR@90PRU'-Q]VR*/GND#
MK(I]]FQDMX#)'E!TGQCRV8")L50RPBE*.H=Z/9-(1Z]0C-H)'QFA+MX$$R)X
M-!Z,5*N<1YQ(C;2R$8D@G;$V<J(6\E4VXM&;@AC%HR_0L7L4+="Q@]!!#0Z,
M2H^TIPEQPPP @A"(VB1"\(E3%6Y"1_+6Y?U(I+")B <2D=/)@2N3%+7*1QU<
MB_P0R@^4*:F.ST9V"YCL 47WB2&?#9@0$;!S'"/-P1D!8-#(^@ N1J218.8=
M\>0FF'AJ-&[25+ " ,*<($T=1C$02DR(BA"Y%3]$%,0H?LBN0T<YS+AO.XNO
M!O4(.0LF<A&D/;7!EJQ56:RTS14#W6\[CG,EN; )A2 EXDI%9)C$2#%&LVFG
M@EW8G+3>\9@//.8_$)=$(6VM0%CZ) 5)1B7>GJ  QP<"XW9:>$O712T*H&!6
M"YFV8%;!K T<L^2!2DXE<L8 9EDLD(XB(1NLQ2H03NG"F7WAHY;,)>0)=HAC
M"^A%M4,B,.JU=RH%LXW8@R[ 5,(3[:!C0:B"4 6A5H)0(CEAO%9()0\()0A'
M%M. C+26DZB%5'YAJY4S;R) $E6"(9XT058+C (63LHDL6:^/5Z59 =<JP)>
MSU0!M(5\!;,*RQ;,6DUZ$-;:.FY1C#%7-=,!,(MIQ(/VD7(E@E$+9T4I3CXR
MAX)0"G#.:, L[Y!R1N-HN65V*UX5:6EU@5U"IN)6[0)$M><\:?.F;6[[DHX6
M;!_V?4\&(]LK4O0L##W:H1D$PF#L>K%UIMZNEY):FM;/QNJ+EC L+$9"8HJX
M8PHY8A32AIJ@@XS)+IPGPE)%GAA#6AF&./$<66$Y8L%S*1*ERB]8?5O<_]7J
M0)*=B+/?8-#6F80[ZOFUA7P%PPK3%NA:79"="L$3<2@F0""N34+:.X:,MC)*
MC:E(::&N N&1)<L0=CDPCXU&CDN"P!E2CDEFHEH(LJ\B8/'VW9L?A2QV(T>I
M[1!5HA8%JW87JXJ_M>^@A7/912P <2(&T'+<@[^5)#(X.!%-HE&PA7XC6 ?&
M CA8AD< +>*1L4&@P)*R3 6>8FJ1OV7X 6<M/82[6V"VHZ9K6\A7,*PP;8&N
MU=6QRXFR-!A$G;+9WW+(&B&0P@);B[%W;J$R?7 *,YP, L5*$5?"@'M&%6(1
MXY"88)XO5*8O_M8.053QMW8!JZ[M$L,'"\STMX;]\R.Z_;&=\G_H?GW0W F%
MSUO8/[T:S'TOGUR:GWS8'<%+_:,.W4ZLY2I;QJ.ZLOU0_:-K7;?7'77CM7:B
MEW2:WW+F':+83_?L.\M'42Y?O7G:/8Y2=D(I^*7NUJ-JD$!) [UZ,53#Z&/W
M:V:WN@(@\=-;ZNK;:1Q&^+GQ4O)E@R]]&%^HXG<?8ZBKT6FL[-E@W!]5DV=U
MJLL7]J[6 VZMQ[U1E<#1J6SX:@$[JG-[<09CK*>OAZ?"N^WEVZO!<')]?C!,
MLZZZ_>:]=9T'OSBHSORJ@XC<(1_WD?425-^-P?WJ^EG2E1+$"1R04 Q<.XH3
M,LP2)  U32[FEY)<Q?;;;3Y@P^!'_3#C[HN3O$XG\*)?>P/_KQ=5!&@]S^P]
M',<7R[+[5M(L5LWJ)\",:=#K#;[!I56C/JMZ? :CAQ=->-7?D(:L-^;YU#:\
M-6.D-DSJ=SOTIQ4C!Q7%5#0#?@WR<N;B</8M/WRZOML03*Z:.@N(>@F?T^5?
M3$"RX]%@9K[E(>9WP(SRY:AG+P;CZ263UX$!VL$_S:X')NC9\SH>UO'<@ND;
M9Y29&";-?2]N3?3ZVJV[$_D]G#WDK@RNR8L%SV_]GBF61SB=,BS!]Y<O?KGO
M1K!%]9*WDF7OTQU%-_S.O9SF$ZO#W"9VRR</SMG=3[;8]]%<+X1["N& =?//
M39;XRHGXZ%,$UR-$,Y*LD^Q74:AEK(QO$WW@!KVPM"VQ8<9>(JN^+:M2]$C1
M(T6/7*W+@@-25$D[5,FVSIFL/>+;AK#YD^L$7@L]+"4R^TCD[8'K.LO MH%A
MUYJ9M EN?#:;MH))J0.+R#F9-VV31I;;@+"T0AI#74P+1?]Y<$DZYV&:5N1\
M(X%,X@%I;J(VR3FL'QY@?A='K\;#(8QQ947^]0$C? 6;MWLIJ!O7;P4M"EH4
MM-@/M/",,),K#_FD#>+2$5#Z2B#X6@1/@\=LH6X1$<EX+RD2*K",%G"/U!%F
M34D@'&-J%K)3-X<61.L#PTE!BS6CQ;:JS^\I&*W'/^S=GL?2'D5;8'^3\<1=
MUC<;9-,GAFKWQ6+X^2FY*T^P2:S%/*DHD<5*(FY4]D:)0R0R8;7C2HK%NE0K
M\F O4Z-6[,*J XY743QQ@UKDGO#WUO'QX2SVYS8HE%90L.!>P;V">RW&/19<
M=-)Z9 3+I0J20=J)B!23BD3X3.+"<9M5^>+KPCU^(/0JCMT4W%L9[FUQ8W>S
M/>.Z=U<.W)>&<>_B:"$/_><YI[]8/WMM_3SHT.INZ:U6; @L1^4]-(7N<-!C
M%$X'C!PF8'18:9 U,B#,I [4VF39@J'R& >]ZU/W[AV#>NYPWNKWFC$^,#O@
MJ3_PE'#Q?0I(M8Q5"T@5D-H$2$G-(HDV(:HB $ZB$5GPE5%07K&4O"5X(8K\
M&&]ZBR!%)#]@LHU;W,\1I.XNM7!U^/L1A18V>7KV1Y4)GD*CN\X.LY6='6YQ
MI81\?+S;]\-HZ_Q'U?^1GUYUZ^I\V,WGRWL751C':C1H3IF/NO".+U7HIA1!
MA?A8N3CZ%F._^?4\#AM-D;\?I*J.PZ]='R=GT2]K'<"3_%0WU9WJ]7B8'P@T
M/)V\X'088W4&@SNMJPC+%*I;SHGGDQD'S?6O!F= X(OY"@YM.N/^I]L&\X@W
M;0"93.!"2J]1D+E$4K($.64QDIK#-X00MYASM:H2$)=QWFFYP(^7JW@G-LEK
MV"1^@$UW)"4+0&/+#(I<8P!6\!TU%PXQS;V51 <GS"J*(&YERH1V;BLV?P<X
MMT%(JK.L&P;]5HT)U.15(9:>'8%BF>K 2\TY7U[#V5ZC]NQHL8C%3&6Q@UPM
MYCS""GR-O8O.K?AT-Q@]KG#/#I4\^J.?QKTT*=CS80Y"WCL8?%,9ZD%EC^Z'
M\KTI>S1/K6N >T6MZN?_^E^:4OSRCP_OF[_(RS]7WW+!HS:)V Y@(Y><TF@E
MTA8#4(0$B$<81Q@3KK4%G<\7JN5ZCSW5@"8*;D7<1HX,,01ABK4'3/7@*]U1
M+?=C/+/=/-8Y*;@2@COQP5S#!_T#?, =TVXT<"U$@T:%[P##,ANPH(H@8D1N
MHAAR$T7.$-8Z$BZ!!<E"+-R1)'0^G66M"XAK&Y'55"+NE$N:>D/E0HW,33(L
MZ=S=3;$5S#%EV%:7V'HBZ][ /E1'C[K?T6DW /H>OOGLO-%@ X,309)'W$B/
MM#$8)0;_;Y3C29&V .BU"B'7_FG#Z!;JH*U[Y8Q2VAF-B.4*_!I&D&;&HF0B
M3M0:2WULR\I=K\C0NJ6[8=Y7.>P"%EA6"CL '8(9,&U4 D^><K!; D-&:8-P
M<([C&"RP0[%UU@0=PYAZ,=<ES0YF]^R\J1*:*GM^/AQ\A[F,@*%V@8G C* R
M$(^\S ?XB,9@,$O@)*PY9<Z%F!;;2S"GC;08&4LHW,/!W*8^(.)PC%@;YZ6]
MMLWQ=AK*!"W9_/NV/^<3W<I.]<KX:4=,D1LABU$<PBT-*1!,,-\!0MAM KC]
MP:B;NG[J.=Z(J4ZJUYZ/A_78]D>SQ\7OT8^SEJN:#9:ZZM;U&*YS%\W/1P%>
MUJVG%=1SM=L)J>I\P>OWOQU781+U?5# ]_8PR7,-X\_6)GX_G^B+P57HNZ'G
M<*97&^BQ]644:T&=M%^;&,VB8%0C*CUH$T$%: 8'ZL$(K#'S2NN%#FMK@Z2K
M+@"KZA(OVJU,?FK38!K5,1]87;=93"BA";@N:B$0L(U$ADF3 T&"1*QR59.V
MZ(5V.S1/7JH-*!JEP&.ER639#'D_*R+G-4,R4$>2%DD*=U/11+!9A) )2:\=
MXAZ8 WQ=AYA/2F >5(BL)8I&W=U]N T<\JP5C1$B6LD$(HKFK52B<H<:C5@P
M0H? &/&N18I&MEG1Y-#)E0T$EFG^!"Y" ONWF)$S.GT:NSK^>QPG]OPMV15@
MD@_&7TZKH_-AMU=1,?EI(=]BXAODY*FL46RO\21RN@?HHOL\CD[U=]NL4WV_
M8S+P/N>IA9R)DI]X<ZR3 8T&(WAUMG6_#<:]4)W:KSDI)68?*(S]Q"O9.3^:
M<B%M4( K7$K$J;-@Q490#1Y+89WU>K&WL($1T!ASFZLFJX$GI#4CR'-ME#51
MDR#7YD<_.D?A[F-X;9"164K"-:WQPWY%V]0F6^Q,L=J6-$)0S27AB 8#3A]6
M"FFA/!*2I<!$4D0O5 Q<)A_I-;SSJ\U1C+?]>C0<-QU[COKA[S$ Y;\<Y3!N
MD]OQNEO[WJ &\^L!O6E6L]ZW)&\TU $-&S^KS^%RZ)^[5V/_#+K[\RF,/JZJ
M9/*J.>?=^Y/C2E4Y)8&0E]7KXX]O_WET\O:?Q]7;=Y]./O[Q^_&[DT_5T;O7
MU=^/7__V]MUOU=$K^/GMR=OC3R4#Y)*,1Z,;2-@FS7G=3#@%I$^] ?!JD^.-
M4O<[('(W9_K'>E3E1C-5_<V>5_;+,,9)TZQL/L \[!?XZDN^(-L5C8$Q[<>U
M&_LI)"4G'%7(BQP*5QRT$],<>64Q.(Y68+^09"A2 ,3FH+@ LA%/<+F1T2(1
MM7:*>$^$OUN/O9O2Z:@ATZJ@6HD=P>I;=TJW-BA@4G@;".D.L"H5AGM! XH
MEH@[9I'C42)O4PB2*"_(0A<X(33AA'LD3=.-%=C;81P!@:D VQ58']\#N4NQ
MJOQ1F&-7.+7Z!O]6,!&P*7)KP*>'&&XSI R.1"<JD/2@A;B7'#D:";*4!AEB
MC(HN!K6"M58P,)]DS@4R4B&KB46$LF"HEL[8</>J_IYGU!U=O :M75]?K !?
MH6:7)]^,@KU %]$.4>RW!%3?1#<<V^%%174#JOK2X+AY=*9%_+0C66G4.L-E
M4B@H$D&_ +:!?N&( (,&X82*42P<?B-&.0TF/1-&@$G/),"GDD@0YYS 0H.V
MV;!^:3KF%05SU3R4I @@X  V*,!&Q!290 S"C@A0'UC:N."IZ>"9]_D(9 AP
M#U<.:2D%2I1X12R/B=X#&[NL8/[?<3]65.V,<IGD+UT9\C6(2@VNT"2OX'31
M;H<KO*U/L[W_K6K\T+I3?8JQFB:CMVERH!]B)9Z4J[EV;WGJ)K>);-7KZ$;3
M$P6-GQ;BR'9[36_EZYE+MS'(]*(I2S734R_KZ][@=99IEHFPLDZ/7:<WMCNL
M_FE[XSB_6IGZ*?_R-?\R7:9ZLE#U0JCSGO/"SS70V9#A_ZFJ^8CG?QI"?#^D
M+U,O?D>A.XR-89"[X8[/^B]#MS[OV8O#_.O"(?6.Z/:;]T^KG4V^^)]Q/>JF
MB]E0FEL!R,++\T'=;+8<-OE= (CSK5<O3[M_?^ !=D*7/U'VM.9LJUXIPFY=
MI=/+8G+3F73[O6X?AC2RPVE/X^L_ (TG7Y_;+W%25PXUNX>'MO?-7M33EK;S
MRW^M@$&S>E<,L;"PJUV_39[-WYQ8^9ZMZ[QB</OTIN9?^!R'+VY*G;B%IB]6
MO"-ADD_,,(V2)QP<:2R0Y2*"G6O Z-5$R;#@OBRS(_&V[P=G\<1^7]&.PY,/
MC%[M.>C/W69PGT?V.UC>+47B9G]![X2U4+U]]^K][\?5R='_=WUO8Z6<"] ?
M!-,"&<,]XEJ"4@,O%I%DO0XZ:6')*CCWDP=[?]R+[]-Q2I,#$)?,_!&LNGS(
MO>^[O6ZS;WJ2:Y(\@+.?Z>Y.D]![1:V9-7W3; 80&P%4#2\FNRBSU.P9_2N0
MU,DO/^?OIP;U\<G'RP/!,XNP38;KP\M_Y!(E-F\6]<#=K _;-(EJ3IXO*_$T
MA7AN*_[:V!M3[,^CRX\'79PO1V W#L;32R9O:F)0/\VNAQGVP'2/AW4\MWFQ
M9VP^J674W/?BUNJZ7[MU=U*'XG#VD+O*YDY>+'&'Z9_F[949.#<&RR_WW4N6
MO4]VS*;?J3M4;GJ::R?M$[LCW28YRU=>[F"RRO[?D\>URF)>?0MP>7L+\+60
MLA7=I-?;YOND@9G?)S!S?!UF'E^V;G]7H94]O8M6:HM6HNO12H]N_-$BB5FO
MWKIVTF=C^FF)[A0M6I$M53%^SD)0=-!^ZR#>*G%X]CIHV18Z/L8G];Z=$'BI
M.N)GW1!ZL<UVU$K3HCY=QNIF4;EE)6B)^MCMI_6FT'@3K/IL*MI'ZI-SW"-F
MI$4\18:<<P&)E S/)72MB*O86WC(CL+1Z$T$>+"]2T&[=O%#SU&_???F1PU9
MR#T9@$66%SCOX4SV4Q'J'PGU5CV9O636 CP["#Q!:NZ=)LAKB7,*L4:68H.$
M2M:I*$@,"ZU4EJG>7H!GIV1Y]<#SQ/AT\:LVXE<UF0ZQ/FBZF@Q2E28"6;G8
MCW!UD9&"=[N-=\9RRWFB2!B5$)<&U$I.1+1)>FDD93PMG,Y<EZ/5"-Q1/_QC
M .MV>5VL'PIT/^HE)@O*%?>JN%=[PJP%;G80;I0+R1BAD9%. =SD$YH>'"TF
M'3$A6.+(PK'Q=;E7!6[V#F[*9E7KG:K)^;7*:%4-XY=Q;[$%U[.7BX)LK4:V
MGY]R'. )V.E5,CYHAAQSN5]8KM_$F$6***&3$]28A?8'ZW+5W@R&H%'[UZYX
M/>W;.NH"^CT<0_.Q?_CZ1^4Q^*V-)XO6>#J:_KGHC^*]%8S;=1Y=*0(U!P%I
M8=FUL&S9^FF[EW+\[W%W=(&<K6/.!CX[C_VZL7N*0!0=OBLZ_'8O0FN-M7(>
M>1PCXE([9"WF2%$9L PL4,<WY46\&^33<6.XS/7B\?<L9?'3J1W&7[/@O9J3
MNU>#>K2JN!SIB.))E&V@XDCL!;,6$&HU"&TK6$8D )T3!-%(288YBER,"N66
MT=8[^!_>V$;3VF#N8:$ST>$%[S8<.2L;46UW\?[H>YB_[?:;4U.S.F]%+@JT
M[@JTWM$DVV.L:1)()W#RN%(T^VH&Z5S8G'#%O5SHM/X8_ZYI[O40U+L4,/CU
MPU2\5N7"L7M:KQ?1+2Y<<>%VB5D+SNP@SI HM<6Y(:3(.),/YSK/-8HQ"!P<
MXS'BISA8K< 96D*%.Y+"5S;'-N8Y@9Q5?AA#=U32]@J,[0R,;2T2Z91G.CI$
MG02T3(XC'35'DOE@O/,^ZH5(Y+HVW.#+5Q/)7=EF&NFP I$E+Z_X8OO!K07$
M"HC=5H_))N^%8X! %KR]@ 4R0EI$HF#..F&<VEA9C-6#F.RH@F%EAVS?UNF)
MFN#]Z#0.6R$&2]9++?"Y9@+O(<#>#G_28DXD54B0W%A68(M,PO!72LH9H9R.
M=E,^7".6EU_UO[P=Q;/Z0QSF%5@5(/(.;2<@+EVI=^O*N.S!%;^O0%N!MK9!
M6Z21,Z\X<A@K@#8:D E2(,5$XIIZPOE"%[]U>7:;@#;6UJH<SQO:RK9?V]W!
MB58_7F@!N4'A>6@'!]JA67K"8)S;(A8@?013KX'$SP9*)4TJ2)>0\E(CSJU$
MFCN%%):&,&M\-&OT$E_!<[O],8S]_7D<3LKJK&R7#V\W$69)KGP&N+E9'= 6
M.NZ:_U> JP!7BX'+BLB]8 01G "$.([(*D>19T(8H8,RWJ_/!UPG<%&\W<-O
M!;@>Y/#!A]R2_&^SI7HW/HO#KH?/H?MU;K;-*+O]  \_Y!W"V$\O[R: _$'/
M]>LDR%>OR)U:=<OWD].861X<VSI6^< :?,ZG1FW_HJG3HU[6U?')Q^J;K:OS
M(3#^$-Y7A3'X:(,*AM]MI*UQV*9UZZMA](,O?1AGF#TP=8?UJ/KWV Y!T>52
M][D=:)6&@[/) ;F>[>>15MVS\UX\R^JPN15&V9^6=/S6'9TVC\J#HL!20]N?
MI&/;7C4<]V+=_$!>5E\&7R?S!BF'6?6:<:1)2;DJ?O>GMO\E5E]LMU_#^$/5
M&]0UT [D!71'F XJ/WU2/3*/-K]W<*D^#BH+=XRF=W=MTXR^"X^ *X'4Z(_.
MITZ>:Z^;NO# >NSJ;N@"W6*FX.!K-S=M=A>93#!3(&;J]J?#;&Z=M0%H?."K
M*I8P'?B^>INQ(D_Z8_P:^^.\6"%6\Y4O?YZ2Z.W'5_GSE"Y_[E1YJ6]YX.2R
MR@YC%2\=<"#8/"M,/L. +J(=UK#2P-P-C6W**_H:IG+FX ]&#O+:\H8VP_CO
M<1>>FFO<C$>7U+15YNBK!;Q<'#\>#F/?7S2+4\$+\])D-G.9,WUO'*XX*D1X
M+_#TY5/3> 2:/(\Q"_N,+6</R<,!9K5 N(NZ6\\6]2NLRF!<5[$WH1]<^-5V
M>\T3X+WPL'-[$8=UIVI.4U>#V^5C,O#1PN/GB9U'D+^[>L'LI8T@G0U M?\'
MQCVJ&_(T N+'9\W]L!X_YN7_LF?G+V?<#(*4\0@6J&&I3)5+0LUNMXV4S-C@
MT]B=@WA6;V:#OY71#JXQQ9R@VX;UO:U/86E2!'J$VU0#//M/MV49/4*U;<!D
M$8EP'8E$P2N'>*(.N:05_*4C(Q9K&1<2DI;QM5]/*75IL4S/[_\ZH=8U.^6/
M3Z\OS10Y;Z4@\="S^OP>/[L-4%3!_;V\"L,(7 \,!(*1Y>%>0;E/CTR%P38"
M,EK0#8 3U1.9\9*#ID;%C($(%2D8@H3-P1KM-3(L). -84-R@H,M_.1SLD<3
M4C2"_0%>/@COTX=A/+DDR+2.ZJLI.?[14.-H0HR3"2TFG'>-;U =_6$8#W.4
MNX[]EI@I\,\$>RYMOIO&7'OXN'/-+EVAT?D8J_L!)N?F*++HLC=4N$UT$K=:
M>*R0=-:"N\@=L@9;I))TDG!'DUTX^K>,[OTT&OA_G0YZ@'WUI"+?NT$N,UQ[
MT!I@29S XW_MP34OJ@AJ]SROU7 \[0L*'F4,1Z.'CO<SV8A7U5"P#[/X;#[7
M<]/[')OY+2G)"[VV5\T<[]Z?'%>F,>P)V.^?3MZ_^M]_?_^/U\<?/TTMK.KX
M__SQ]N3_SO// ZBY"RY:\^3#[@A>ZA]!LB,_-0T!))M][<8D&\93L!ZRM9A5
M_8.DC?H0&!<2)2,HXA$8UT66D#$L":^-,6HENPJ?_&D,X*6]3W-#;T9^;> 3
M.,JC/\GH]% 9?,@LKLO@=;4K-JIVMP5+\TPS:)C&7V.:B:/4."]M0M/?[="?
MSAQ+T?A1C8=YZ1$V 89!KS?XEI\UQ_:7 : F_C.;QW2]FJ":'8\&LV!9GDM^
M "C6?#GJV8O!>'K)9%P$XP[^:78]T*-GS^MX6$=PG("J,TZ8A-.:^U[<FG7P
MM5MWFZ#!Q>'L(7>E$TQ>+&C'4)+?_#V3-X]R2A]@N^\O7_QRW\VDP^32]RY[
M'^T0+O#5?QL?P'8FK;!X'A/=Y.H^,7OG-D6U?$K/W#[EDW<XG]7V9B'< P@'
MK)M__NL+ C[.RJGXZ&S5Z]N4,YJLD^Y76Z$K<54>N ,RC+'Z'3Z?UM5QKJ99
M7;<Y-LSL2^1JMF6AUBLB!0AV39\5PCT5"&C!@4WAP#1<_A<W_.5OLYAY\^'D
M:C>X^7P4_F=<C_(V]1(UB@HT%&U3M$W1-J\F>_?=B4IY8[O#ZI^V-X[5(#7?
M--OOL1Y5.8NM^>;O,7R9_'7T!2S6HG^*_BGZI^B?9;W>P<CVBOIHA_K85KV:
MM1_B:$-"\1.7[D?;9C_G?;,_SY**[&@Q&7(I*=O'==D>!J\TN[X5M%PV:?Y/
M[>3&/3P.LZUR>L&Z1*)S2&M%$6>!(!V<0<DH+''@2A%Q,Z>#$":X5PDIIG)'
M*PSW>"D1%O"]B#J%&'^<075GPBJ[EK#Z\+[L\H#I552 +1I@CFN6*/U:\*C@
M4<&C'<>C.UHZ)2\H5AYIRT76_ %IHPF*F!"A.3,X+!S/C%0%%E5 ,1J..#?Y
M? 2!&ZFG6OK 4A2K1(O[ZZNR5=17W4N9W+@J*\!0@*$ PZX!P[8<%<R]M0&\
M#!$I."I42&0\."K,$VM9T,03?1-Z'%<2"\ :ZX.#>P"$=!(!40L>3Y":&\ZV
MX*B( \5E@:%-.2HE$ZB]\=)7T\/0Y\V1Q!^'3 _+IMKN;:H]%R(6PA7"%;'=
M.2(6PA7"[;78ML,+W0^&? ZTW&*"R?Q1:P%OV6B\</ZP+^X8^M.UX> 5'?K>
M0NND>Y-07,RE<')YIIZMZVX"0C9%J-H94=M/0'@VT9W]V&1H!PALHB4'#M%8
MR5!RD2-.741:>8\4HT;@1)QF_&;0U4M'&*$6Q> (XI8Y9))*R!F5J!;6:K,0
M='WON[\V:NCC32WT+H[>IQ/[_6@T&G;=N*FV<#+X8(<W&W$LOR?(#J@J>2-[
M+; %-7::EOO!A'N(&MO:#-0)I\B<1([D3O8XEPFW3J. $X[<FUS&Z28N)2TC
M#]$B(FW.="0&.1X",LX)'[G%FB[DH:P;EQZX87B@Q2IJA^^E;BB)C06IVD/+
M@E0M1:K;<81@P1CV#)%D'& "C0C ("%%E/#$21O$0D7#Q!W#(6E$,* 'U]H@
M;:-"B@;J4Q2"L(6*AEOU;\@!)Z; QYH%=EMM TO0= VG^,Y@B4;U7$QTUNO!
M/NI\WX^MXTP'Q#LREQV]^N_.1;PBINPHN.A\,"G>?=@408<!/,9V)W^N?J;%
M#"IF4(NU:C&#]L-A]]A%C[5$40:+.-48.6L9LC@EYPB62KI5!))OVE=O0&D?
M#7QWFF<XZ7RP 9N+'V!37/;BLA>L:CTM"U85K+J&551P+['4R ?C$2?!(Q.2
M1R0?;J?,XYA/C3P]N-P6K)*&%*0J2%60JNVT+$A5D.H:4AFI:-!1($>#0)Q'
MC4R,!I&@E;,Q1JWC*L+7;4$J?J#TW5T)G[EV:,W!R9('W,*0]J3A>=.NU7Z/
M);EWS^R39>J6%@MF$R5A]\7&:;HKTG:S^CUU80NS%YW<'D8M.KGHY/7MM3D?
MDG<<81LBXE)A9,$@1XX$I5U2TBJRDN38>SNR?O^0&XX/^K>Y@V35&;)2M/$
M1T&J@E0%J9XWFQ:DN@>IA-<D)"L1B2IGA42/7, !X,IR"] #L+-0?'JI]-N"
M5 6I6IFNV[QF:\%-TM&"[4-TL^E/4_E'%I-K SZT0JJ*&;.3.JR8,<]EHS<R
MF:R3#LE(P.@AA"/C(T%1,"F,DY:(U=1AN,=0FNWOWF,MK=I8TK2-F4D[8RR5
M[*4"C 48"S#N,3 ZDJ)Q7B+O=4+<:(:L5A%%%A*1% M%%C.@5ASKW@(PD@-M
M:('& HT%&@LT%F@LT'@+-":G?>)4("6]!6BD"FF3+#(T6!P,!MA<36V+=D$C
M/5"DA-A;!8VE875[(^>/;EC]NQWZTUFW:M$&G&G%HNRE.40[-*NI,!B#PFZ7
M0;33C>*6HW*QC59W<,I)'B@!7)%$Y*[7$CD>/9+$\Q@LPYHLI,@1:Y/#G*(8
MI4<\B8B<)1%,)2.PQ=1XO-(^I@^,!*@#BMM8:>)>'M]WBZ>@7T&_-G)L0;^"
M?F\^!Y:D#)XCRP1X^38FY"@ &R/**J]9]&RA&),1D3"M*$J>$<0%3LCX@)'!
M,2KE,7-I&ZU4#ZAHXX'@ GX%_ KXM8QC"_@5\'OS6;&H.3,2:1T!R+3!X/IA
M#T F@P1?3L6X4-T) V!JR3"B)H*[&*U&-N*(!/P5-%5)Y38X&P<_?<!%&PL[
M/VOTNQ;LA@]YKZ--F-2\.Y?4N.]M3T&O%H;#;W!N/3X'#3I'C0Z3*R-(+JL\
M(P=(9AH,1OW!*$ZTS[N3S]Q@8X@*"$L-NL1IBHRE'('NX4993AS6+ZKO9[W#
MGNU_^>N+V$=_?%I2$3>STRN;VLEIK/)&G^U?7"^-_:?;=/G#1[ !K<^#I"1H
M<'DTXX@;II%Q1"),$W74&(]IR^O/RFL@(7Y4*:ES=^9L"SBI@OM[>74&J8K7
M*]-432ES8*K1H'HS&$80V&I"/7]1G0QMO^XUE*V.PO^,Z]%9S(7:EZC-WNW#
M"Z)M!EO#I[SX_3CAF6_=T6GU]N.KRFC5>4 5]XW1[5.,52[$0?'+=UFIZ.83
M(2^KR9Y[=9))V%Q!7G8NM?*<'GJPCOZ11MQQ+4WOU])1*DXB%\AK ?HB:8=
MXA722E+'"1<\BAW0TO'[.;!TG67I4F%?5/;\?#CX#HIB%'L7.Z"\4W")2R=1
M4]6 8T&13C2B)!1.1H(V=PO*F\,]TCD/P[8 LY@(4-X\(,U-U"8Y0-F%3):W
MV;.*]>@C$.:5K4_?] ;?_A[#E_B;[?:;LZ*#7^<ZN,3P>CR$*;V#MQ+Z.[S^
M-">\/%R#/\S,Q[NCRL?]803A_0\HX*QKKROS4>;+4Y"6K'NK-[8[K/YI>^.8
M;YQ1OLJDKQJ:5T=?AC&N2+V'9J&:(?1AM2I"J[-FO>[1D5.:OQN? 6A[^!RZ
M7^_\-O\_&/U_@7]GZ_&?YDCE]T/Z,O7B=Q2ZPPFZ',)"C<_Z+T.W/N_9B\/\
MZX(7U1'@#V623U-D)E]DP ,!GE&_N17%?KBE#X@;?,\KG9?OTAW[_D /B]#E
M=?]5>&)IWFR&LQKF)/R:GS9;I=/+#*3I3+K]7K</0QK9X>C0CD>#E]=_ !I/
MOCZW7^(D&0G9!!,]M+UO]J)^^>*7F\M_S<-N5N^*(186=K7KMTE/<H6+=4L@
M=%ZL&K6;5PQNG][4_ N?X_#%3:D3M] 49M9(*XAPOK';']MYE.%6"X\5DLY:
MQ#EWR!ILD0(<D80[FBS^3";/N&,-[J/#B[O>2WT(C M -P/ QB.\TD66D#$L
MB=S($KS"YKTM6_DUQA NPR>-:W3;R?5&&*>"D4>8WP$3RI<C4*J#\?22R>L(
MQAW\T^QZ4$8]>U['PSJ>VR'@R8PPDTA4<]^+6_,5OW;KKNOVNJ.+P]E#[DI$
MG+Q8T(ZAY*=Y:9ZQ;B/.O]QW,P&#=^E[E[V/=L"XQ5?_;7P VYFTPN)Y3'23
MJ_O$&ANWJ9\G)0.7?<8E]QD+X7Y$.&#=_/-?7Q#\8O54?.))FAE-UDGWI]G]
MWR8*P0UZX5&1#O 0JXGC71V#V1>N9Z?S#3/[<D<\6K%0ZQ61 @2[IL\*X9X*
M!+3@P*9P8+I-]!<W_.5OLZVBYL/<=E'S>6[+J$!#.Z"A:)NB;79+VUSN830J
MY=H^1O/-M;V,YIMF/V.B@&9[&I7MAZHY.5T5I5244E%*12D]S17.!5"+^FB'
M^BCU#O:HWL'KZ..9@^NF0276AE,$K5B7/3GWT@I:[O29EG)>99V9RTYBAKG.
M[<<=XHH:Y S\7\YA2RS_F$LRW4A^(YIQJQ5*R6G$77.YL@ASC(VG--"@MW!>
MA1Y(T\;3FCNM <HYS()'[>'&@D?;[:@#JIT1XRA2(J:<MZ[S(7^%E.(.\V"=
M,@N%XID@RF,C$&,J(&XX14X'B@+#TDD>-7R_2K2XO^0[P04A]J<&:"L(5X"A
M ,/S 89M.2K,Q<@T,0 ]$IP.$_,I'9:[D#II@_56XH5ZLS)9K[GR2&,%]Y!H
MD3;!HJ2E5YHPG+#;@J-"#K0NCDK;Z\.6]* -Q$M?/;*GVF'95-N]3;7G0L1"
MN$*X(K8[1\1"N$*X(K8[1\1"N)U*'9GO BVVV94:=PS=AZ;4[W^87N)B&@SC
M7"VM2=&HY?) 2^2V1&[W?_N@!&Q7%[#U'">C/2):QMP'4R%-@D7"Z)"<<2KX
MA288%A,::52()^\1M\8B1[Q#G"1A4PP!\X7,DO>^^VNCZ&X6QZN7*H2W=*EP
MP=K8)Z,5NJ$DGQ2D:@\M"U*U%*GNP!%CG58T(2(=0]S)@"RA#F&EB)#2$1P6
M-OZB#1[<&(6PL :PQTOD'->(:B$9H8F+$#>-(_<75#T0NHVUMHO [C+A"FH4
M)GRFJ,&Q H"0!D5"P'](/"&=H4-IXF/.610&+W@?''.+$T4VW\A]H.!]1(%H
MDH88905A"RWXMHH:[ "WLC_1?@GL$_-'5A8T[>!MQTT9VX? Z=$9+-.HOMYC
MX/$U@-NIX(N5L=.T+%9&2ZV,IA$"+6RZ3VQ:=.5.TW(_F' /=>6V=IQT8)@0
M39$048/_EII((4=4*VJ,-%R&!9]OF4CA^KHP/<[](P=2W=V\XYEKA[+G5+"J
M/;0L6%6PZOJNEC3>.2.0B5*BW$X*Z6 P8C8);;TG0:TD/EFP:@>T0VO.O)5$
MSQ;&*X^O=[!L)S04^V196BY3<K)8,)NHYKDO-L[M%HC (1HM-'***[! %$,V
M!HFDH%1I3#$-827YF7DCY=7\/LJDF6S3\=)^_S 8YD'=9GJ0U9^\IRTT098K
M=%I40$&J]C!J0:J"5#OLC6,)OI /$6FOP+..N0IFC!%Y'*6A 5 OI97DF&X"
M"W]0 *U 8*L\]8*%!0L+%A8L; T6,FV%(0PCH4UN&!TP,A9</NI#HMI%C95?
M2>;LUK%0X386 WW&6-B23-OF-5L+6Y..%GN19]LTC:G\(RN\M0&!6B%>Q5 J
MAE(QE%IL* 61/(V"(VV#0ES%A S7"3$68O2<.2GTN@/HLYW[>ZREU5<ZX+3$
M$%IE-Q5H+-!8H+% XP.!2W(;,?$Z-WD*B OGD77&(!TX(T)9V73D6&^T>Z7
M=2]>T0."9<&KYR7_K2!<@:G"I@6FGI"@E*)T/" I P&'*0>BG8Z(<*E8X$G;
MN-!L:M6!Z,W!E-1M+!_W_$"J=%=N;T3YT=V5?[=#?SIKK<S;H/%;L2A[:9C0
M#LW:*0S&H)S;99KL=%>SY:B\AU;*MN+,EN H3!+(8><0QTR"NRX5HIP&3P6-
ME"T4TDV8$N&-0(E@BCA< \X^4<BFI*(CR8M\S\8[G_$#0E3KS9P;/-XN0Z=$
MCPOZ%?0KZ-<.'UT2(WWB!$GN8RZS"/YVE DII3!A@:GHS4(HF4M!A/;($O#F
M>< )&8 K) GF7%BLC;4;:PA-#PQI?W2XU8BTBX&W5A"N %$!H@)$N^*&,>L4
M9C0@0;-+)0"[3.(*.:\,4UK2H.E-J&/."$!(P#:A:*[R$9#%.+MNG"6LJ#1:
M;:4!-<5M+,:Q0Z"WYN1G^)#W&-J$2<V[18=)>/M]+WP2@ %+YM^[_;&=\F3H
M?GT0%7XTK#7%K:_&\D.:-$\^[([@I?X15/IT:H>Q^AC/QT-_:NOK!4 N"3.?
M+LX[(E=J7A6M\M6;I];#4LQ/8Y5W[FS_HAI>4:BJ,\UJ4)N@3JH17/2GVT#C
M$4/: +X0&[RBP@.@Z'SN)E>$P@HC'[B)(FCC[4(]AFB3#ACP13L&]WA!D&61
M@3_%,*56.B(OMSOKX6B"+5>L]&$X^#*T9T?CT>E@"'0(D]+8=Y^OD?. \_;=
MFQ_5I\>X<_<1FS8P4 7W]_(:-!PSQT/5^80VE;TD3N4N&EZ:,EQ3$5B]K"LW
ML,.0R_.$[C#ZT6!8=ZHVS?%MO\J(F6E_,#^!VR2FV\\<UH\3QOS6'9TV=WR-
M->CD+WF2<-5HV/5Y"Z[.W-2P2EW]G,E!\<N/G_ZHFS_)RS]7MA_RN8^&1_H^
M3HELOP&]KN[X\.GHZHXVT0V6OY^G.1I4\>R\-[B(\<;*SB3YW?@L DTNT^N\
MC91+Y#4/B#L02B>5051PAR6G7N*%TFY8JL@38TB#,8DX\1Q983EBP7,I$J4J
MQU%N&(K^-(9Q+[Y/)\-HZ_'PHA'O7R]>Y8IO)_#P7WOP^44507K/,T8,QW'R
M8L!7$/;10T?[F;1$W\^A8-8\#6^VB65&I\,8JS/X?%I7$= G7-^"%HU(Y+WH
MJI&$/(M>;_"M/KP$]6L<=<TF!TMH">2:P,V\4?4(-OU,EN,7>I7Q\)?&D+WM
MH!MHUL',Y,^+DZD+=EF^'/7LQ6 \O61":)*QY*?9];# /7M>Q\,ZGMNA'<69
MS3)Q"IK[7MR:QO&U6W==MP=NU>'L(7?E9TQ>S'#'R/SB[YGB>9#3]0;[Z/O+
M%[_<=R]9]C[2$733[USV/M&A&L_]M^D!T [?.*UD!_/=61^UP?5YXAG>VU3U
MDY*J2HSX1S%B6('\\U]?$/IB]51\8HKKC";KI/M59'09&^+;A*_=H!<>Y;EF
M2^'WB:5P?-U26"H0M^D<SU:LT7JEHZBRG55EHFBR36FR[-84C=4.C56T1]$>
M.Z<]ELO++]JCV#M%8\TT5O'<-J:QFOW8Y;HP%)U5Q&!?Q&"R55Q]L-U09*%%
MLE"PM"B1G5$B!4M;IS^*&!0L+;)0RD"TN S$S8S8:IK'N/T$]E;0>C_.8^WA
MR96[ZNUKK)PTB%&A$3<Z(>NX0)%1*@QC7.N%WC.>.DPL%BA@;Q!7*2(3-$8I
M1*E=2$SD7.%;SI5<"4UX/1["B"<-8"=VV+6TWWKZU56^+_Y1MB]A!YCK%IXK
M>9YBN1]DV^E#>\]8K9$4K; ,-)J5#''."3(I$)243=I%K\)B%O2JU=H_;2]G
M/*_DH#@3!UBTL>YU*Z1T/VR._0QL%2;<*29\-@@1>= L48Z(,@ 3$;2]SE4[
MA6*8>^V\$@NU0[2,@7M&D<4J(<Z$1Y:&B*0.FGO+91)TXX8O4?1 M[*NU?,4
MR_T@6S%\=U2MX2AMY F!=N.(2X&1%C(A!]8K)H([3]>NUE9I^%)VH%D;JT6T
M0DJW'7!>1>^[?;2K5RKH_[PZ_IS/-S>'./.QY>W+0*G-7VKS;P/D',,FJ@"H
M1G.Q"F,MTA(;Y'7RAH> ?60W08[X$.!RC:*1 (R"1&0UL0@G3@ @;;+T]IJT
MZ[3=>3;=2QO879+MHC2+TMQ-I<F3]$X%Q'00B',P]1WW 1'L#&>>6$;%NI7F
M*CT#?D!-^VNG%M6Y?];]GD3-"Q 5(-I*B"IH@9,QR("YCKBT!&GC-5+6!&DL
M0)%8Z*P5</0N!H:<)6#Q.ZN14=BAH&/*""4B66@ N7[K71QHW<;85(&@HC2+
MTMPKI2DE"]X24( B6^+).U"%/"'% \'$1.[]0LACU4ISE=:[/)#<%-79 @DO
MN>;M#?U/ENYD,+*]MHE&BSLM[#[X/>,&"W=TXU4R)HLEPBQJQ(4*2'-M$1:"
M&.<8UGXU56W7GJ8NP&D0;4Q3WZ'V![ON-K18=^YTWD]1HO<GQ3NIB$Z@ 44R
MB$N'D4[)HFB,LDQAQ9Q:MQ)=:5*\.6"M//%35.G^V_E[N0G08F#:148M>'0O
M'E&;HLO;R8&)W#\F4&2M5$@D14Q*WB01%W)5L0Z,!0 @PR/BF'AD;!#PB)0Q
M+/ 4T\:->DKT@30%B79+P)^/[BQ&_?XJ4:U(E)1%)&P^P"]]0@Z'@)343F-C
MDR,+1OVJE>A*C7I\P'7[4R*?ARJ]O2OD77T2[_J^^;\GM &B+^Y^=DM:$&ZN
MR=/BBCVE,]-"^S"AA;.)>D2X-HA;"ZI!.XF,,5)I[ZRD?A4Q@M?=VO<&]7@8
MWZ?<$2[VZV9=/\:>'<7P:E"/ZL8V^S4KFP_VX@RF?V=;L4V(6$.@_F 4/Q/\
MN6D^Y_+0/D\:RJVJ8M>JV>7=^Y/CBN"JZ1=(7E:?3MZ_^M_HUZ-/QZ^K5^]_
M_W#\[M/1R=OW[TI;STN2G=S299%BHJNCLTE3M7P YV.L1YE1J_=G_:X;U]7;
M?K8SNE]C]:$'<_@Y-X>;]AB<W/Q?]NS\Y<?+Z_-55ZT*FS9LU]HCC@95TP*P
M&I_GO]O?090+BI77# 6G!1@55B"KO$5,:DX8M89ILM"AV@>##<\)Q5'DDAL<
M:1TUHM(%'8S7A"\:(I=:85YO' V!6%]BUA*_7BPHCJ,LH^_/\X7U;YFJ]=O^
MQ'3Y;3BH?^3^_;C5*#W  A\ :=O=;G24-Y)GS38'"1;C["QW'VTZ:0*3#5+J
M^CBL#ZI_Q8NKMI,'#<?#H]'LJ_EFHT?-H]HTS]^O-3V\WG7TU(+\GI\/!]]A
MY4:Q=[$#DI6B\:"& %!=!'QU1(.)GT_J8N>BPR9IYA8D*]OPCA,4.<G9_B0@
M'7% )'+A@Q!,B<5B-LM*%I@0+@[?ITDPY>BK[?:RI?AF,&R$[<GBI0P_4++E
MPC45*SN;?=,B=*K"+SM!WPD%G5;-96WF)>8^!06\ZY5RB">KP++D'HS&H+CW
M7B2VFBVHR^ZT[P;]W#\X3B)]1\ X7[NCBY.\0@^P)A]E 3W&P&RY_3-I# N7
MSOHE?XO#6,UZ$H?&]]_A_K>'<PR^/ZUB90<,K67;:W;4QEN*XHX1>N/M6LFF
M7TDHK,OFY[GQKK2D0[<P3;'YU61JO=-L52>D#B;=%39PF#SN^>S7%_(]OO:_
MO+WV_U-)^>CS)9,7MJ+<_)H[ $QLO-\FYMWFF7R)0Q<M6INB68IF*9KE#LT"
M-+1?XD2U5*_!_ZG>V.ZP:G:,BZ)IDZ(I5N=N*K="OE9C0WO5R7HU_TD3C/M]
M$HP[SL&XEK!Q*VB_3WKAN1"T:(JB*?:-L8O1MYM62R%?JU5Y"0C\,#>G./]M
MPH$"K$7-%#53U$PQ-XN]5,S-37>U+SBP+AS(67\% MH$ =L@>NN%H.B@_=9!
MO%7B4'10\7:+AMDO#5.LG/8)1!&"HH-:1/YBY;1M15H9;'MR8?<)@==;\W%K
MT:*5'O<^GAVG;XHK59,T_&6%:$\)OE6<7F?'Z*U1=!O$6Q=#/ILR;TH%YIA3
MR#(5$9=:(TV81 I'+Z)7(BYV;Q2.)DD]1=)&C+CA!.Y) BE)G;:<TN#PRFI
M'/][W!U=O.W7H^&XJ=7T?G0:AR>GMG]KW9455-S$C*^@3%P1]"+H#Q;T D:%
M1]O.HYMH):R\LDQJ%#U $!=8(2>91\Y'38BRT<F%*BYPAU-$6P18Q!#WS" 7
M2$11L(23]L;@Q69DNP%&A. #)0H8/4=!W]?@P7-DT0V6R2Z@M')08MS$P*)'
M@5&".,<$F60L"@D++71R*NA=\I#^NXG2Q3 ]0MW\F ]0Y_/3MQ3<AC]C^)1K
MDM;OTU%3<\V^SG6CAI,ZNI?EN/$\M-$?0)LF'<,*L!5@*\"VPRQ:@&VG@4VP
MX&-DR'*N$(_.(^,Q!<\I">F%8-K)7?*V6@%L1,@.D079VMQB>I;V7W8BU[X3
M^<K6I^A3'(UZ,50?/_U1=B'WU299,H-EE]7/9EGVZ2E"^VW.<($]94(B1RF8
M,T8(9+4V**G@@@,#)9)PTYRQ*1C&F$.6:HUX CO()J,0TPHGXY)FR>]H\%BQ
M ZQ6T3IPL[KB_NRJHBWVP+4IF%>XN&#>2C#/JI2\%@IIQ27BS@:D.>-(*>=5
M!-##T=S$/(EQP)011!1WB+,$F.<X1D(XJS0G*K+%MA>[@7F,'V#9TOW2@GE;
MQ[P2>MZ?&%()/>\R;@F5C)>:(445^&J46Z0U\8C8Z(4C%N!KIWRU5H2>->_H
MLJ=:@*T VRZS: &V70:VB*V50@E$M0P ;$R 0T85DEHJ9XES9K&E9IL=LE8
M&Q&T(TQ!MC;OJ9;3G1O;4YTLX$GNN=QFG5]V4U<6+:(=FL-%83#.G41+;'D-
ML>5'D/C9&#-)N< "5@A3P<"8"109;APBP43"E)%.^)4T5=Z-Z#(UY( 0VDX[
MY%YN+@'FXH<7Y"ML7)#O@<AGG%3!ZX!H9!%Q'7-\6B0D'";&,8])7#CSH[$.
MC 6 .L/A'DP\,C8(%,"AMTP%GF+:4>0CG!]HLA/)1 7Y"O)MI_A;H7CAZT+E
M0N6B/;9-\4+E35: A \6;*V_S:S#=^-FWP<^A^[7N;DW8^[V [SAD'<$8S^]
MO)L<$CYN(?Y^-9;[7OYP.E8GI[$:Y4@]C&3@_X5<-N1!)5P9^U7\GO^.U3=;
M5S.*MV'L?[IM,(]XTR:*UWFAI2888:(YXMQ@9*T@B.+$A>9,!+6PV[I,@/*H
MUQMXF[<V;_77CB<K>'TK]-/KR\U..>]K(?$#9XMW\)V.5AOXHH+[>S"H5HW)
M]D,1GL<)#^9$.\(P"IYZQ(7PR/(L$DH80Z6BW"_DCB\3X]BH\(C.W7D";>"+
M5@H/4+0:9:!J&B:?#9J&R3$W3*Y^G_6[JW(O@$;,<D'N@VH8Z_,(]/T:>Q>=
M!N;&_6'T@R]]&-T="&='-Y]7,._18AL2P=I'AG 4$G$6+#*Y?@,).!&6(F&$
MWA1;'ER2SGD8MA59; 4RB>>S(B9JDYS#>@'S9C6D/\7AUZZ/MPOONT'_:ZQS
M?E!38KK)29C__=6@'KT;C/YOA)',>&-5,$DZHHCZ(\=T4,&[0 "[=2.4'E8.
MS-,JKV$U +>G40-]8)Q;I?(10[KDWJDW,,O[-C:!G451T 8PAV&.= +\8-AR
MY[6T5MJM[B@W__=/( >0<A(Z)]?X$-71'X;Q\"+:84M\#-HAEX[:30^L/9Q7
M98K5G58-Z9I_VU[G=7,4N<7MSV0 3_\O\.]L//]I"/']D+Y,O?@=A>XP-MKW
M$!9R?-9_&;KU><]>'.9?%Z(F'='M-^^?IA-.OOB?,4A<NI@-I;D5@07R\GQ0
M=YMG#V//9FOCI1M\S_/.<[G<^?G^P" +H<NOS--ZGZQZI8BX=95.+[,UIS/I
M]GO=/@QI9(>C0SL>#5Y>_P%H//GZW'Z)D\1-9!-,]-#VOMF+^N6+7VXN__6P
M6EZ]*X986-C5KM^&D@4W+%:^9^LZKQC</KVI^1<^Q^&+FU(G;J$IS&QN@9X.
MTR9$:AE-*'!'P%ZD!"#7*Z023]1I1IV-JX#IW^/P2QS61_[?X^YD3O51/[P&
M_3&=8@U_^]Z@'H.[<0+O^A5<R7^]J")8C.=9*P_'\6&<\V25W%"F/QC%SX1\
M=N,:UJ:N/X.;X[K]QKBH5]45:=7<]^[]R7%%2/5?_TM30EY61Z_^SQ]O/[T]
M>?O^W:?JZ-WKZO7;?QY_.GE[\L?'XT_S3/J<!+*M">%KYXYYV2N+WZ[%?\3,
MFR<?=L'][OK'K/[Y>:\+/N Q(,V7B^JWX6!\?E"][?O.K?1YCELX[_MK\H63
MP=SD IK"^GR>65KDO+4H)6P49B; KS=!UD298/H4"4(%XL*G?!HZ(9>$P=)2
MIEBX";*_3L%J3M*/4YK$[O)1KO=I[I?KWNYA@-]1$Q#,ST3!7J#LQX'9V)+5
M>1U]/'-Q. LI\AUPA0^:*$L.3-C^11,I[<4F$ /?VJNEJ 9I39Q'$S/:!8]8
MM&#>.26!\XA$GBKAN:&"\G23\R)-5G."40(>!&XU&&D>!<(I2D(-95'8!W#>
M:S#=AMTF17'*=\,8CONC[NBB)1QU=/Q;JT+2,((XT<ZCZ$_[, KX,\?A;?C:
MK0?#BZJ>1&CKAI6 I79"!/*>0YM&M .1?\EI<EAQY$7RB"N-D<,  X CFC/*
M#6<+&W;+ ,8T'EJ?#*8".I/C6(.!4-<K"N!+W%$E@/_8,77[E;?U:5[FNAOB
M<++#YB*0.E8)?-%>U8^CZMM@^"]X&%Q[GHU"4!8YQ-8L:Z?**NY\./@*]]>5
MK>HQC#ZC31?>\F5H&RRZ2]<,>N/&5\C;!K$'5D2&E7S)%UM7\%,/U'RL#X!.
M\)SFA[S[VZN^Y.V%?C. @^;KR053U39(J=%@$U<:)AZG&Q6Q?VK[^9<YR&P<
M6?6RGBF^?#=H.)AM?JX'@[8_ M8;C,[AR]$U2W:E41)L-#4R8(2%S+70 1P-
MC0%Q[HA@N2*Z7^A6M=1FAC^-8=P#0^UJ$^UMML&["6SW(Y#+43V#TJ-^^$?7
MNNDRP&\PXG"2\[,>$#Y9HWF?KVZI@7]45^=V.,H"D)D,7M;KPK46N-U.4A>F
MQECSZWCH3VT=K\O?=8LN;X,/P]2@2P-XQK<\B#D^O$R=:S+G;H1LFS3$)B8[
MC8]F(N0'@(N4+T<]>S$83R^93(A@W,$_S:[WN>#">1T/ZP@3 RF;K<4D3;&Y
M[\6M1_Q!R+L-[UP<SAYRU]G]R8N5ZF#]TWQ,=Q; ;(*ZO]QW+UGR/HH[AIBY
M_]8[@%(/H>WU$-XMXETK#B:UD]A+F,0MS[+>[Z.(,H*-[QE!@CL,5@8E2$=E
MD<)*,>ZMC7XAQS5I&PF)&L7@P!YAQ"!MM$1,*06^O=<Z7+8?Z_K4O?347UWM
M9RS:&AE\'F!M_/=$%%]-)/%.9X%=<Q;8CRJ['AAU=UIL$?-5GBPL757:CG@?
MAH-S(,#$-XL@B^?9L2K2L/_G;/<;ZXQ*,0IG >%RM,I@B5QT'$4?,#A4(=*T
MD'?P&*R[&9A>!=S-9/%#S_9'<,7Q3!Q7A'SB[BS7(N@M@+WBZ&VNF=BXAI?&
M(6H2GV+( 4O;_](%05U)7[$B$P7\MNCH89E,WE<EN;1Y[F:%C#$<21,]%H9[
MK!9RXY6R@3,JD592(IYCRMH%@BRU7'F;)(YNG>#W]DH 5P1W%!\ A0ODM1GR
MBJ>W,<A[';_&'AB8\SMR118*U.TVU'&13WI%@YBG++=J!(\O18=<BIX0BSD
MX4VH8UPD3C5!/#<*X3%&9!CC '5)8&-MT$'O%M2)@G1M1[KBW&T,Z4Z&-L1&
M?NLFK#G*GV% _RJN7<&['<>[1*UQ1%I$P5\# +. 7<I(9+07PG+& UTL)YJ8
M=8DYI.%>Q$-@R#BA4)"$"D.4]ESM%MXQ4="NU6A7_+J-H=UO@T'XUNVU(U&E
MM#'>:,'MTL9XL=PV-B(1#8!(;3X*I9#V+B'- A568!7Y0DV;K>:XS,1W5<A(
M#JAJ:8.K9]FWN+B+;0?0R0)^N#4=NQT>XRXULMCU%-'2T>*'9>.TXHH[A9+T
M*?=R\L@&2Q .(B1#+-=*KO+,YQS*OIJ7S9.A[=<I#@%9R8K04^(#*?@NH.>S
M:4Y1"D0O?W:AZO9];YR/Y@UCG8_7Y4R7YLS?(%4[<$R5VI28DAA%;#UH&JF1
MU=:AR%*,&'ZQ[$G&_#J"7:^ O-/<O:^@@?JC51UR%9V[%5,;^&]VQO6@LMZ#
M*3O*7.<C4"%KJ-U@.,QP1C&)B!$D)\& '^DQ118'8F,426'1.H8; P+V1Y,K
M/UY2?%5LQW>D-NI!LRQYA)5M2+$C+.<P RT7.9(ZV5Q05R&-!?P?)499PAA6
MK%4!BU=3,D\N71&7T8[<$2X#Y38< XQ.*U'O"IM)1J7A@>?BS@98A@EDDP_(
M1\8"LYZ$M&"T;Y7-CB9TGM9TS\7\FKYT<Q>NJGC$+K'>!%?/[<4.@:JAUIA(
M+/()8\2U=J#AI$ TRBBY5-1YTE)0G?]A2OP/$]JOB/E(A^T*\_5#-<@2.(/7
MIB#'%7UVA!F)""Y:Z9!0!AC+\(0<=A8)[[U1,26S6+"J)<PXN;+1@BOBOMM)
MY(.31%B%)(D.<2LY<E$8Y%D(,EB2-%W('F\)B>9^6"6=;B\OM -B6VHO7N:$
MG4YK&G7_<UF%9:XFRXTN!B[.%=-S%TWYE1IX$U3>O\=V. (M"/=?]C&!N_V$
M 7L7U0 ,ENI\")PSA"$WU<D>5DRI50RTME)'EE'F@U*(<.D1S^4(; +%X5T(
MEDGL.0VK+77TI@LZ(/ZC^W4^$^F&3@%8'X[>IUM4TEW%CIHA=OM@HAZ-'CJO
MSZ342,J"F)MBG#7'[L9U3.,>V!%?)Q:$G2[(W'F\2WMCF/^<5D&J#]LJ+:4@
M4RZL1#N&;J(FTFU+_-0]\[(]?LO^S#H.S.Y5#O =[0],9$88BK2T"?&@"'+,
M8C".<T*ND8'$A<)^7G!.59)P.0=_.0:#+ ;[6T01.5CFQ(L%6WH&9/=@W7\W
M @5P!52V7^(?C>;]1S>705AM5Z('<97,K2GK51>7?01#-TV$UI7V6M32AM32
M*@\U/@-UY)1P(6*,A,!@2#/0*DX[C[!FQK,8 @Z+ZHAJ'I(2B#A07#R?([ \
M462$"$& M8O-0NK&SJDCWL'5MO316C11,9 VK(E6?^CL&>@C13S3C"LPCX3*
M^^U@&1&A$4V<6_#NJ:*+W:' M^9<1.2Q,N!HBX1,-!:)0*Q6H,-\B&O71TTC
MBW4R%>N([=I'D]Z]NY^6U3#>-%9CYZ+<#X[7M"' <#+/"_.3:574^5KAZJ_=
M.B>;W>,V5FDX. -=666A[-K>95AH1[:2N' ^:1)SLQ.*P&<#W\XPCKP$S16H
M<C8N=-U)GL9$&$.$>HXX 7_0:@ZNGO34F,"P]&S;1S$?F;E!.G>?Q6P#5\[V
M0G)<?P>XBDG-K<LU"WU,B&?KW.3VW)X2R;$+-JF%UAR[4+OID5R%=X6KFKJI
MB_'L%"?J;3UMER0-1D1L4/02F(0;4#V$&(09.'A>""[-0DJ%80(+^ D9Q7.3
M,&V0T38?!9=)\>"\U;[-?MRJ5]"L)0*UGF;767>MJ8$7H\Y@A9%T>6LMB8"T
MMA0!JS#G*<!8Q/L6H%SU&JTGEKDF3K*Y3\\PUN->TZ>D#T_J]B?TS>ILDK(-
MF@Q(G#>J\\[W;,L[]G,KDM_MT)_.FN2)]NY:/_MTAR_3D\4Y/<&.1L.N&T_V
M)$&9Y&7-N0BP\$W7HZ:14P-ELRR(^B+W4\J)7=^ZH]/YKC2=:G9FN3K-W)0-
M^!!3(]@3Y)OF1 "WC &Y\RMS%D2W[\$5J$;V>^Y]<SZH8]VI3IH^.0/4<&#5
MA1?XR_XY\QT,X7']P:C**#O,OL)T#M?[.+6)%^NID#7;VKFN\^0\Z;6,G!^X
MRQOCTFUVS%UI<DDRUDD'KKQD7F27C"/KM$<L,:XP"<DN)M,ODUQR;)NYUA_B
M\-.I'3ZD(]8:%_-:0_$X'=IG8+G/=1Y<6_M%OVNZB=/+;N+'1Q_?O7WWVZ?J
MP_''ZM/?CSX>KXU/5'(.&VF02_D(*R8$::PB8A@GEH2PT2U8/4]+0KK),;_:
MNNN;#O6]\:@5?=5:BV4STE7 T57#T=7/F6<H?GG\X5/S%WGYYX/I8<>9T1(R
M8<&2J6+3H3AKX7H$M*WL-SL,=8-(T8(E T_M#@)HZ_/!L(E0U14XM3E[[S\Y
M^2_V!M\.GVY7[$N'\[U);Y*T([E:MM];Q\@-]ZHCO*/(TN,M\WQZSEE)[EA.
M)VV@R%8AWP/(!VR<?VY"L=O8=9Y->YVDO=K97HG)^T!?>QAC]7NS7UH=YQA)
M2]BX%;1?+V,75;Z;NJB0K]6J_.E5)O=5V5]&OS?/WTN73VS%LA0<V#E%]N"
M3[[\,)]G[/I'+.G/W7XU.AV,:]L/]4$5O_L(''T5Y EV9/]<8&03,$(+C&P6
M1O+6:4&0-B%(T2=%G^RT/N%%G[1)GRQ[;@>(EOQVZG[#_6U68"M-OLW54M\V
M"2DMJ3O=%BIO%65+U?1F5 \G=ZF:OBM5TYVV#+L8$.6Y\)A/&EG&.>)4.TVX
MS&E+JT@Y <4VT6O_&-0KZZ0L#[0@I2QZB\JB%W JX%3 J8#3B@Z=&6+_?_:^
MM;EM),GV^_T5"&][UQU!L/%^2#LW0F.[9QW;;??:[IVXGSH*0$'$- AP\)#$
M^?4WLPH@08J298DBBU!V=%@2B4=5ULF3F55966;,+3WU4@XFR>%X@#+8G<0)
M/,_W#=^[590M,(+$MA.P1B%<[AAFK(<L<?7$3GUF^XF3\O0@QLF?V.:N^HRJ
M:_EXC=.=L:]:*S"*Q[LTWZFZ^)Y[OE-AHS0F<))$2=U)W5\,.%^"1&GU0>G5
MAWZKN\[D7G<-HII(%A6/<&.8S("IM;)MZH85*(#AAFRY94F1Z%J5 1K/W) J
M$AW39*4:I'^(@YYX%'I.G. B@:4[OFU@A:E8=[@7&8$?6'%ZNZ3>(]89MJIU
M?!0$]BD5FUOK3VO>$AM=-Z9Z)+<]<K;'#":N<?>!3:2W(]-;,B0CD.B8 /EB
M# D+798F883'?(>Z$]K@K;* ZYYKI@&SXB3Q;QV^^Y@U@>,9$M]5=-E@='K[
MQ.T9%(X^+P&\N[]6ALIT3/[!X?.I3YF)CIEY\)B$]7'[&(D5.U8<V'KHFUB3
ME$=Z%+!8YZ[C@O-@I$&PESI,'XJXXGC*'LO?EO-Y64COXF)0%>]KV==EXLEO
M;(D77U05*R[%??4>'0]#4:_CT=G\Q =DPA0$+9DP,F'/;\)\U^!) M&NX45@
MCN( CS#AB9ZZ2>0Z9A(GP5Y2YY0R84%()DP9/J"U7J6#ZWO6>A-9_)-6>\F#
M.8V= */P86@#P&TOQG(-@T=^I+M)8.H0?*=ZY 1<CTTOMJTP9MZSKAIW59!O
MS?GO=;K?,^U3\%I>S"X!,EQDN BT9+B>9+C2Q+#2U WU(#0],$*8[L0]2T\<
MV[?#V+--VWO&5>J#&*[0433AZ84:+MK>=O*&D/P(VN]"^UU(HJ3NI.XC ^=+
MD"@M>2B]Y"%2=;7WOWU1)(Q61<@T]W-\:#]<W%2^Z%0F@4(G9*$5I#IW4U=W
M0H_IS$JYGG@L,5C(G-AGSW'LY^TM";_C(;C)EX8UO/Z47H@S)]D[/)"NJL4M
MJUD@8S@+9'UK$FCJN#0%I- 4$-DOLE]DO\A^[2F',#$,DP=<-TV?Z8YC,CWB
MIJN'*3,\GEBV9<7[6,0XIOVB)0R5[!=MR%,Z@.Z6%2F$)A=$":F3"S)V%R1R
M[2#R3$\W6>+ICLT2/8@B5P_LP VL-+29&SY'"-TQW8&<$(><$(6<$+)@9,'(
M@I$%VX\%,Y,P]#W+U,T$[);C>:'.O"C5@Y@'C!M>XGE[J5=#%HPLV,XP&O[
M79C_MQ^ACZT8=_@[R:X&G12-RXH$WG#F3%W;?GU^=[\]^/,(4>JZ+?>]_.%R
MO-":LF$Y;GKKA7EK0![VSD-4OC*"P#5LKENQQW3'2A(]-)Q0!UX!FDACQW3=
M;2:QW3"*>9CH1A18N@-4HH>V$X$[;3J)F49A%-SRA2^*)DNZTCM?>-Q669/Q
M^OU-G+<)3WZNROG;<KYH@46@;9_2;>*YF)=MT>S,-%Y3BO$-2O'#2>#=O2]&
M!>RLMD>F&OQH0*7$GLE!@2+MFE<<#Y 6@M-2D)S8.0G,%;>Y$!_>_?ZW+R@,
M\54SJSC7YO"26:WQ F_[M3_:71N>SJN$!"(>L[;&5O.E["P#[.@]>*;:UQE^
M*+Y17[]<9@9!$'IZ:@2I[K TT2,7C'#D^6%L6K[-XUOZY1E>:%O,U=T4]<M-
M0K@GY;IG!BPPF.F%D:NB?IG&)#3N/CI-"71U^K76GTY'5&KDM_354:FQTPV'
M05UOX' 2V>%'H1C =?I/^-FWYU]"$#=GUGF:\QN@MXH+=3F#@6SGQ7F2U8N<
M+<_PVUM>Z-0%9Q+?WRUAR _^T=9-EB[[IHA;=<#/^:*L,_'LBJ.%N.+@P]Y@
MO[$O*W?VYH'NJ6D]?F2>=E[TOD?*]':.TFRU0M3U)"ORK( F-:QJSEC;E.>;
M7X",Y<<+=LGE8I'.4NCH&<NOV;(^?_73]O!O!BDX>FM W!K8_8[?@69X#JQ6
M<<[J&D<,;N]N$C_A;UZ]VM8Z=X=,H6># ?J./JQL?\=[G>D/O,",'#_6.4MM
MW0GB2(]XXNN1P1*/,V;RT-_'-///+*O^E^4M1.=UG)=U"P;N*SSRKSEXC:\T
M#M'W LFW:OG# /)DYA4"*,J&_V%:?Z30O#^NL'V/U/I;I\3O&UD?/WU]KYFV
M]N__%EBF>:[]?/'AL_:_%[_\_GZ(MKUB(XH8LYG%="_&<>8>C#AS+=UWN.'Z
M26+:;"]+$"ML7-0U;^J+(ODE8U&6"^_P5\X0+,FGXC-ZC%B$!2[X6!95_R<F
M3=1?1;VE;P/J)<;Z/V<%*^(,HOVL@'"M%<6GM'DG6(TU&L)?$_#7("A@VDJV
MXO23&H*;!!U0N BD*\.WZZR9985P2UD<@]O.BB7> *\5!9X8QH01R^'-'!Q:
M#@.K,8R3:G!G\[R\KL^&P'W< (W%2JQFK,2$U99A%Y-_PG)W5A2;B.^ 'N'E
M.GA@9=M=(E]G&L;4>-U?'^,\YZ+F9S5?L H&II>,G/83][W:F7QRE=694,3E
M6?^0N[)*Y(L=8QH&KX>6OS=SPO3_=-^]YB/O Y0<^I7FU*9>4B]?1B\M?VH^
M[-XG)K'M=T_^/C?RC79A>K7%U'1V[S%]DA2_NU3IYO)H+Y/GE/O38OU;7O^#
M!F;WO/;#EPN?:TSN6A94952.E*A!1$*"4VG3-)G+)X;7>/E9UL"3XN\8S#<B
MVBW;&H+A^L>G56X@J[I_J_H+O^*Y9I(Y)7-ZTE:!".2H!&(1@1"!$($0@3R6
M0&PB$"(0(A BD.\GD*^8DDWT0?1Q^O1!E'$@GZ//QX#__]IE6WS!; N:=51K
MUO%QPRLSHLZ.:*J5$/(I$A8)C@1':DOH(\&-2W"DMH0^$MS)"8[4EM!'@B/!
M*3I+I&2F61QS_J3JHMES%PU3>\[G04/W >' ZT;#G3E:?<T6M:9KN/\*OM<6
M9873>X]2DKT6%%)0\ ^7\2.*AAT"NB,L!2:VIUJ/(_7QX?4@MG",#'L\SV)\
M("325)TT=U=EBDTK3D/7UCV7>;H3<4./6.CID67S, C"U+9N564R8S<U(I_I
M09A8NI-&J1XYKJ^GKNUZ8<H]W_=O5642:TP["C1L5E#\\NZQ!R:'_AYJ)(Y2
M-<D^D'TXNBS)/JAN'\BI)M(DTE1*ED2:JI/F'2=[Q:87.DFB,\]W="?VX;<@
M=?7(Y[[CN('!^:V3*=/ B4,_L/0T8!$XU1[3(]L)=2ORC# %/]=+8G*JE5%-
ML@\G;1^>F]_4SP1^D+1_J_B"98G&;Q:\J+FLT58V,UYI3'"/<D?-C51K]CJJ
M;V4A/;V\+GBBY5G*L69?6XF\[D699W'&[QY9XOF39J:Q>%X4KHX/IB_6'2$0
MJ@/"$7+E'8<_,M=,4PA0?0@P=2>P8SUR/:X'=I(F7NK&B>ML1ZF<\S V>*([
MEA]BY653#SQFZ,P/O2!*D]0/HD-'J98U"2T*5$>ME&093EJ6XP#A""T#>='C
M@REQY4G+<AP@'"%7WG&LG6LPSV"1[OF.H3LN_!:Y2:HS9D8>\UTWCFYYT49D
MV8D1@><=F7B/8^NAY_IZX#J1'_,@3!*'O&A2RA$(3@W+0,L]#Y+VIR>M[% Y
M%X64@G:BGL:^0!(<"8[4EM!'@CMEP9':$OI(<"<G.%);0A\)C@2GZ-R.DN5:
M:$[G&"5Z!V>54YW>43 ,"8X$1VI+Z"/!G;+@2&T)?22XDQ,<J2VACP1'@J.)
M'ZK3J]36;*K32]5QQI,Q3;M+*(?XI#V+\8&02%-UTMR]S21)32MT+*Z;%FXS
M<>Q0#ZPHTIG//(,S+W!9L+W-Q+)Y'"4^N&L.EA2+N*-'EAGI1APZ26PSSXJ-
M[6TF/V<%*^*,Y8,5IV?<=.(8M..$K 59"T5E2=9"=6M!+C:1)I&F4K(DTE2=
M-'>[V($96J'MF+H51*;N,'"<PRCR==<,@\1U$C_R;QV%87##]@P[@(L"5W=<
M'NM1['BZGT2NZQA!$"2<7&Q%%96LQ4E;"]K4_2!I7\1QU?*=-7S[=85\3414
MT'<TJT9YB3+DU9S6C49(^R-TRRB6'1],7ZQW0B!4!X0CY,K=(:S##,LQO5@/
M8QY""&M;>I :D>[SQ+<<*_#",-T.8=W8XVG($SWQ&-QCN5P/$M/0(\NU ].V
M[#2Z=?#,84-8<^*;'@6Q8]90,A,G+<MQ@'"$9H)<ZO'!E+CRI&4Y#A".D"OO
MJ.\;^&8:N*;NNIZO.ZYAZJ$3^'H<I''L\-2++;[M4CO<L@+F,-U,++@GP7O\
MT-!=*TP]-^ ^<P-RJ4E#R4R<C#3'MRXDB_VN%PF^>Q$(_F!1S@>"$!W(B@1>
M<.9,7=M^?7YTY*W??=_KG@#2E3B$-/H&=>T7T&-M4YY'997P2C01WP$]PLOU
MG"W+MKM$OLXTC*GQNK\>ACQGBYJ?U7S!<'FGEXR$IKCOU<YUN:NLSL2 +L_Z
MA]RUX"9?[!C3,, 7WZ#0L)%=KV$4;LY?_73?O>8C[P.4'/J5YM2F7E(O7T8O
M+7]J/NQ>I<J!30US8(6?;+_EX\;I$*U*&9C.[EH&3Y5E9XCZ3Z;NHM'J,L\2
MK7=$=DK[I!RFQQ5E>\=C/H_ B;+-B689EO/]KNLS#H[43,-6>'B.%"\0NZ@G
MOA> 1[*P1\RC$Y>?90T\*?Z.(7V3%5HS*]N:%4G]X].*"I$A?K;JJ/R*YYI)
MYE<ENAL]]2A0IXPHY7DIQ2)*(4HA2B%*V1^EV$0I1"E$*40I^Z"4KR4$M$0H
M1"CC(A0BD8/Z)67,1,(;_/]7EK,BYMJ7&><-S62J.)/YN$&^$(=Z/_'LH+&(
M^D0IC,1'XE/#(W]!HB3QD?A(D4<@2A(?B8\4>02B)/&1^%Z ^)28>5(R(^[)
M)Q%) 3_OGC'EYY&.>1[1[0'8]\Y11<3_<$D_HOKOX6 \PMW>CZZ,,6+L'LI2
MCI1YC^I]C!*01*:G0::[2V>8+#%,US1TVS5CW4F26 _3U-"Y$R5FQ#R+&]%V
MZ0P>>SY+7$?G5NSICAM&.HLMIIMQ8+B&#XZ??^O,(KFV]7S%,@++W4.IC!&K
M*=D-LAM*293LQFG8#7+"B4R)3!67*)'I:9#I;B<\34/N&9:EITELZT[H^SH+
M7%]//6XQ,XG=Y/;!H3;S0X^%B>[Z'CCAX'GK001.N)6F06B80>"[)CGABJDI
MV8UQV(T#,)[ZF<P/DOEO%5^P;.?)1DRPD7*'&8U:@T[C2".R *?&5F/QSRC8
M'3=D7[+30H!4$) CY- [CCT*O=0VF*<'\$-W?&[KC(6NGB3<-TTOCM/;)_=R
MU_52(PST)#+A'L.#&#<V4CTVPBB.3"\QHELUVI\[QC6MD&+<EZ*=9"Y&(-$Q
M 7*$YH)<[G%#ECAT!!(=$R!'R*&[76[+\2(W=%+=,0.F.U;,]8A%3$]<9B=!
M9/HQ8[=<[L"+[,1Q]"C@,;CI@:,S'B5Z[%N.::6QYSH.N=RDG60N3DBFXUM6
M^O2,*TBT=>E@*TAORSD\>JF7UP5/M#Q+N9858#E$?:-%F6?Q?2==$=6/AI;&
MXHA1,#MNR+YD[X0 J2 @1\BANX/9T/0YBPU33R/NZ4[L.GKH,JYS;IJ,&XD7
M&?%V,.MZCL]\/]$=QX4 V$\B/7 =4_=8ZJ46#WTWL X=S%KVQ/0=BF=?BH*2
MQ1B!1,<$R!%:#/*ZQPU9XM 12'1,@!PAA^[VNEV3AXGCXP8CQP W.G;UR(#?
MHCAR;(?9;F":M\L#&%[*34N/3=?5'2-U]= !U]N(8FXE+D_-Y.!+2.1UORP%
M?<D6@U:1#K.*1(<G**<@5,'U]&IHDOA(?*3(A$02WQC%1XI,2"3QC4!\I,B$
M1!(?B>\%BX^.U#RY(S5_R5B4Y5F3<3I7DQB&Q/<"Q$>*3$@D\8U ?*3(A$02
MWPC$1XI,2"3QD?A.+-5(R<DDVIQ.YVJ>B/@?+FDZA8+VRQP;NV/*U'UIWL<H
M 4ED>AIDNGOCC.'SP+68HT=FR'0GB<%=<QRN^V$:189G,LNY=:ZFZT>19;J1
M[MJNISN&F>I!*$HDF_@Y]YW@5KGCG[."%7'&\L%*US-68J/S?<B(D!$Y'8F2
M$3D-(T(>.9$ID:GB$B4R/0TRO>.03=\%]]HP=3>-0MWQ+$</K-C00]^W[,1.
M4^[<.F23NY[E1QP<^"B&>[CG@T?N6+IK^J[G)4'(L((R>>3JZBP9D7$8$=K4
M_E"97\1QU?*=)V[V:Q?YFIGH^,V1K4_1\9LOQ1R,T'.C,'C<D'W)'@P!4D%
MCI!#=T>_+ Z3..:1GD0V1+*6D^@!]YD>A6;L,S>P/2/9CG[-U Y\9J9Z''%3
M=T*3ZZ$-8;.7ND;H)Y'#HUN%W X=_=H4_KX4727C,0*)C@F0(S0>Y("/&[+$
MH2.0Z)@ .4(.O:.2<IHFC@UN-T]P/<D.$CTT'*8'S.%):MA.Q&\M/YFQE:9&
M $Y[X@2ZX[)8#Q(SUMW$8 GGCI%PDQQPTE4R'B<KT_&M/\FBRNMEB.]>;((_
M6)3S_]L3R\=VSJLLAK^3[.JN3Q\@- _^/ @TUV^_[W5/03%T^8[^WO?&E6GJ
M9->G*L=IZ)@Q6J8HT1T_]O0P\'W="0S#XF'D^[ZS;9D,S^=.:MMZX(>V#G<[
M.G.9H]M)['AN:EE^'&Y;IK?E?)XU<^A3?5$D;^%YT'->X!&?:[OT%=[QU[R,
M_WRE<;!("[B_J5K^,+5X\@@+B11EP_\P[3_B=7O_B(>MW5<%HWWCY..GK^\U
MT]%$$&>>:V\__?KKAZ^_OO_X]8MV\?$=_/WQZX>/?WO_\>V']U^&<#J\\B@C
MLU]X RQ5:V6JO:UXDC5BN?QO+:L87+))62LQB<YE10*/.'.FKFV_WF[<\26W
M;T%]G7&M.ZY7F[%$*Q<<VP32BI9:OI9B+*78E WTH;C4>@&JT(<?=C7F.]YT
M@# AL3TGM4)##[C'@8S#1(]"ENB&Q7S+#CR7.VR;C#TW"I@%W&V:W,!C#FV=
M!5&J>RQAKNN&,;M-QAWN/Z42]9_:1HPEM/IB7K9%<V=\X&W$!^XWXH,[-L?8
M(>->;.F>Y9BZPZU(#Z,DU1V#14:2>I%GV]N=C'PG\+R8ZV[ <0'#<_7 ]0/=
M9Z9C&V$2^#P^4B?-J;<C"+HC*E)!#S2X/Q^DABC1)M9HP($S[5=6Q3/--B>:
M95BNH.-W/.;S"+S*[E-GHE6\7G"0[!7/EU/MT_UD!/^V,=>:-84)$^F?U_#*
MJBJOD:C V6!QUBP!$PF\2EPL;_\9/@<'=CDE8]#GF#4/'*9FRVJHA+@3L 9&
MP%EB>J$.Q,? S39#<,T3IH=I8G+FQX'A\Z=8@RQ.LVV67/L^>Z+'8"<]JH,#
M-=D0].D$ .JSP/="VP#_!(RXDZ0NQ(&AH\>!YYA6$)N)]R1+?B" 6B<!T$VK
M-T$#%['B3^UR)1#LIY9VY@H,(>OS?_%AV#5MP2LABP+L81F!86'8W7JW:5/.
MCCU_.)@UG4B$V-[F+)M3#+@K!LQJ+2NNROR*)_"+=L6JK&QKP-PERS70->&"
MH0P751ESCDXW_%UE-?I:< -Z!F4%'[-J"?!LJYH+0+=P :_KJ?;W698+GPV^
MN.MY,6OA6Q%NPC/CMH(GU4T]P3_R%J^9P!,;K2@QZ7T.<DK@T@GXFDU9%7Q9
M=WZ@EH+R;'HK7:Y\OM0BGF?\"D36S!A.#X"'F#? ' U?S6TN5STKX6W0C?N;
M?0WZ+-HT8U=<8W@=KS*0&TNN. J"IRFHN88TVX!2]TLZVJ*LLZ9G FB%<'(A
M$J^D%@,E@ 18/=/2O+S>5.IO3)L>$\Y'GDG=/2OJ@-,$U@UB5">.=<<U CTT
M,21/$M=WP).*DUN6[3&SHE_X)4XQ?N8B7;^X_/94J"8G(UN>7#0/;>D?YN%G
M4-T_:MFW/[)"VE_ J*K$+^=.W2<%*,_>R'YB]\O[O^&LKO;AX\^?/O]Z\?7#
MIX]DHW;8*.#<JRQ!%TB+JA+"3U95;(F<"=^D8&4 D,"J-:^NLA@)OA1\&P/?
M%_"3Q559U_ UD+(P:M6?'(W+H@+VKZ"90.3-K+-EOT^_3+7ARR4MX\OQ_4]T
MY;>$J]<\UK,;?98E,+AG>$XS,PS/='4O-!W="5*F!SQQ],0+4]>((B?Q@V\^
M),9'X!I0&'%?=SS;T2/+</0P,2S/Y D+C$25849CF_,5ZG?]4*&98*>1UW$]
M4^[#D[8:'(6.&\&[D$X,8BB>93P=7(,1"F(4H =OT][@-<@!UMJ&/1.>TM!*
M?2,-=2M!FV)$H1XEKJG[5NRE(4[2<J8*%-Y^>O>KD(IY_N-$@_?&,_1.A3,G
M!/K^AL<M!DW:IS0%1:_4Q<L$AKI@EUPVOW>&-0Q*K\02.OJ$##V NLRSA*%#
M&[$Z W_Y(F]F97LYV_!BDZQFEY<5..7(1!4P&?@-6K3L.*[C-!DBRD^:Y8)/
MT*5.2K@#G539(L&,JP:!G\ER\$W0"097%-QWY$]H";0'6KCY=+@8GSI52=":
M<@9S#POYOA,93@Q&P'? _70M4P]2.]7M,(P\W_ BVP^?PV5]6R;SW\"@9LTO
M8"]_Y0R]U_\JKW\'-+P#U[7*%D]P_9[%00#*$.=^X_\K*A[.C:RA/%2U M ,
MH64YYVC5);?+RW:M+6S<6C?P0R03B(4)N+3B,U[42$ORD9W[@$UKL5EWO1F\
M%'[%\A9U;]=KA]U@ERPK:K R;7+)&QF)HE5).! E%YDZ\+C>_BS$($H_J+C"
MK<6=<]/K/?@^X#\EY74!3XD:#$,7H/HS$!9T$$*5[H(,W:XBD0%IVL)+6?S/
M-I/!ZR NW8Y)%>*'"SP57AM$+KTWB3,(4NXX4IGDR!;1@I-O0HQM!8&ZF,X
MPSTTY'( )/#P\XW9N'0XF@^(W<6__T?3AME _Q+L=7-FG:<YO]&3K.)B/O,,
MY-C.BW.P!XN<+<_PVULY:E,W*X1 NBW^\H-_M'63I<M>-N)6'0;WO)^,.*MX
MSM"\GD?E#0X$"C<JJX17\.B;!Z:TF=;CZ?1I66W[AH[I;XQ=/TJS506%KB=9
MD8-2Z4 ,57/&VJ8\W_P"9"P_7H#YE<44=)9"1\]8?LV6]?FKG[:'?S.)$4=O
M#8A; [O?\3M0VN?SSPAMJ%6<@[+BB,'MW4WB)_S-JU?;6N?ND.FK]1Q3-V_#
M!NLG#YZ[V9WQ9V[)X3_>@DRC*ON/2<V*&KSZ*DOO\A;BA#.;\U0W&'=UQXHB
M/4@B4[=B-PA<TPC=R-^'M_"9PS-P14+T^U/Z63JA/U?EO',DZJ_EVX&M>T *
MX#/Z:7BUPE,;O:_2N?(3K8969A#5,/BP_[(O_3(1YF;EW@CKKK%*."]IF>,<
M\?!4Q%4"KHQ7-]E*Y#L+.NJH 7N,309EQLMU,"MEVUTB6V\:QM1XW5\/4LO9
MHN9G-5\PG!GI!2_SH<5]KW96G+D"VRFGV<_ZA]Q52D:^V+6FIF&^'O)9K[R"
MT'ZZ[V9KZ@6/O??1]X53R_/#]7_^@1OP CK]8D]O-8]BJ.^S2$\RS\H=ZC-V
M^:Z.[_(.>'S72>V+>=S9Q%]G%>?:K_#WK-;>%QA9KI+J%$&\$J.@Y#E,QS0+
M\RQ)<D[;]D@'GH7FG^F4QM6,0C_9M(" !6,^K2=8=<7_O(8 $Z@/#_9[QD.2
MFV$K/"+$,*<G4&*8(S*,0PRCDD(\]OA/$%H:4WGE/:>1/VA$NXGK$ZDF<<1J
M.LH4[1A-%1DZ>>242S\E0<BMP+-T'D18^LEW=<8#0^>A[2?,=;S8V=-*VVIE
M#:MK8"/^GC6SMVT-HN#5^YMN3\2%3'Q)OK*;/96!<@)_XID!E8)Z*:6@U-!=
M,C1D:$X&K <P-":+4I>Q6#<-4<G)=V1=C3B-?:SEG?CAK4-G R-(;#L!RQ(Z
M' ^=C?60):Z>V*G/P#XY*4\5,C2A,W'LN_>3DQ+OT]"<X-J(^J/SO$'JEWO2
M@<[4F^\<M_/PW!.>+UNZ)%&2J.H2)08@O)Z(1(^[(C',Z';A18=>H1AF.1O3
MT'J]T2+CGO1R=0^(?"=V_V@YBW"[9I%H8E,";E2JX%XN:Z50X*XTD5& 2C.A
M:DPN)6;HL #W%-M1H#MVS'26!$Q/F!/PQ(Y<.XV?LHHA2KU)ROH%&>NB2#Y+
MOOI9T-5;9*M]'5L1FI/0-F@:B;24+ EAE#!ZV&4*V[%=VX]T-S)#W>&>K4=Q
MR'0O"!FW0M,W(O<IRQ2'M23&Q+#H$*236)"@&%6Y&/5+&_6U:<NN4F8IRI+(
MTA44HY)G<>*<11@]G&<1N5'L1%:D\\B.($;% Q,#F^O<C:R &2SQDZ?'J)N4
M!<Z%./%,^AM[=2U,8^*9=Y<F)S4E-2530AA]@1@]Q-$KD>_95A3KGHW%<$,P
M*BP-$CU@KNT%?LQ,YTFY=(<U)98Q<4V:[U0Z2J655&6CU ]%%X[*>EJY.-FP
M3ZLCNB:7XF2YBC!ZR.@T-B+'C76+88E'//8R8B'7XSAQ/3]PHB2T]E.?61#4
MWWB!YQ: 5W&10$.SNJE$2<KWDK?VY5K8YB0(37(M2%W)I!!&":.'-2EAY-A.
M%.BAAR7_HX#KH9EPW4M\'OE^8,>>LX\=7X<U*58X,4*'3(K*T2JMJ2H;K;[C
M<%.<K8^Q9',\J.-?X@.B;7(M3I:K"*.'<RUX9*21!ZZ%:0>I[H2IH3/#2727
MQ3:+;.Z&YJTL+9\9X'"$D6YS,]&=!/YA-K/UR/-B,XJM.+7<;==BR%;H6 RX
M:D_^A#NQJ38):2A9$<(H8?3 5L2/+3<U/::GG@<!JNV$>L@C^,=P#3SDQ@S]
M9-N*1,Q-#!^S@CT'ZV4E&*!ZAI[&C#$G!MMCQ,>P(JY/,:G2,2FMH"H;DPX5
M$H^ZRXJ&%9>9.!<73]JKY0F!%4_PS,'5.:-Q.8^R0IYN3WQ./L?),AIA]' ^
M1QQSVS&L5 _LA.M.;+AZ%*6Q;AB!9?L0F1KLUCIK8"66:?B![KO<TAW/<746
ML4A/K3@./=.T(B\XO,\13AS?)Y^#-)2L"&&4,'K8>@=)ZAH>=W77YX;N1!X$
MK6!5=#/@?I0P-W8]8]N*)&["HPBB76['"5@>V].9Z9HZLT++"GG .3M"Y!I,
M+$K043MRI=5492/7#TARO%Z5T21R)@?B9.F),'HX!\();8L9$$A:/O@!#N.!
MSNP48M$X->(H!@<BO;6 ^IATWYZ@NB2LCV51+CCF9167>W(@_(E#)2Y(0\F*
M$$8)HX=.PW&,(+43#TP !RN2^H8>>(:IIV' F,V8%V.V[M,S?)_?B@03VPK)
MBJ@<AM("JK)AZ&]5>975R N@9%I6Q.6<:PV[H?VGY$J<,%$11@^8BP61I^FY
MKLY9'.B.;Z9ZE+) #V+@?2?@@6\&^PE(D9R^LIO.E_@K+SBT;T]NA#TQ7:ID
M0=I)%H0P2A@]K 7Q;&X$AIE .!D:NA,$3 ]=-]33B-D&MXP$XLW]!*//:4'\
MB6%2(*IT(+JG]5 ZY_X11PB*&F3;AP=J;V3(^:/6#_7=#<+^ZL[4"\+A?W=.
M!.QNJI"B-_7AKD599ZBB9^+\FNR*?T=GWI@_DN5X.=Y-!/S J]4G4P"=5I=Y
MEF@].%71X1/U?QXI8#5P?@ /R8[<T UYHMLV!V\GY*D>A&ZL@YMCF99EV%%L
M[J?&DZ#GSWR!Z6+%I2#M#PV?7\S!CN[+4PH]18]:O@>&TG4P;-)TLE=DKUXZ
MBLE>K3SA;SONS[,;QTK2R A3W6,NSADD%BY@V[IIA['I.4F8.K=WXSRJ1-6>
M+&(-XP&_?:M(U<2W%$VJ/B7CN G AV/M[JCNN$O?-./PB!F'C[S1Y)2?(E9#
M89LP5M_'FEK(4TG9XIYPU;R?Q]+4#XH ^M&R5@/TAPC</3_E 3-US\5-PQ$W
M]#",?=VR4IO;6+@JN%6HY#&!.W"=I+I?RGI?QSM8WB1P3\(9V4*><N[(***<
MDU-OLFEDTUX<Z ]@T\+ 8 X$W[KO^F"?/"/5F1=!+.V;49A$3AJ[;!^A][/8
M-']BFXK6OGBA-FTCLH8_&/3W0=WQX,_#!J-;0UFW"]#R[77E^YKTJ!7FQZCW
M6F#[:<YJ?1X4)RW+IB@;+NG@X]<_N!VZ$7=]/4Y,4.[4='4\%E,'W]:+HR2U
MS=1YI=W,\[.<%9=_><4+_?<OC^2M?7?L&VD)\#-O$WAVUN_7EM],D&8X@$"+
MVZKB1;SL[YV(VMB7+"OJGW(@+K@7F#/)ZC[? .N4R>)DTY5.#*3::8@DJ(_M
MG%=9#'\GV97\%)N>%2WK>$M^CO^""OTG_.P%^B^Q,>'FS#I/<WZCRY.F,-T!
M)-W.BW-L4<Z69_CM+3::ND J*+)N=DM^\(^V;K)TV4M/W*KS(MF12A&5-SA4
M*/X5K=T\D*9,Z_&*O;:\*H +ZP,/6*\?I=EJ\K#K25;D60%-:EC5G+&V*<\W
MOP 9RX\7[)++>42=I=#1,Y9?LV5]_NJG[>'?-%8X>FM W!K8_8[?7LW,X09K
MAYD:JE6<@]+BB,'MW4WB)_S-JU?;6N?ND.E0>L.=0WHX!=?I]:;G$$X-SW_]
M?'N*!'F#:.=_6'_\\0?< LA""JS_ &*(VQKW!/T!G^;+.JOW-6V[[R'#=1C-
MFFJ_KIK_[_\66*9_7FOO5KT0?'S1]>0I-O79NX.6X>>L8$6<L5Q[6Q9)MCIL
MX3.OV[RI\9)/<@?E5NW*9R;6O4[?[UMP/W_Z_/>+S^_T7SY]^N\/'_^F??EZ
M\?7]K^\_?OVB]GCO'+\A-3A3U[;O8X'#^\#/(HDON.T0H W.&#2%-9**L&9K
M,\MJ[7]:,(R\RI>:7(=%C^IG"/,TT]#_1WLCKD'-MXSS[4O%Q^;YCQB/@O?2
MM."W@NMVS:I$S\OR3VC:\(VLAF@R!4I/Y,NY]EN57<'7VA<.GA[H(_3P%_AQ
M*6O.0D"*[;B(&VR^&8;N!)\!<2P,8#+5OLYXO=6EJS*_XMJ?$"Y*S6X+^7N5
MU7_6$_@SAB@#K J^2CJ3I?!14WF<+S2*-=J<+;68M?#LLJTT^*8%QJ@D1TRT
MG%_Q7' %QK=76;.<:$ :(C*&QT^T$N^997"9;%53:A&'AX+D@'I >$F6IN#O
M@DN<5N4<6K'4TK9I*_Z$EX"###?7(%K<:CI?Y!G\&BVUNHUG]XS)5/L ^$2
MQ*Q&D2S+%G[%V0CX&OQ1'*9-(<-#MY^'"ZZU?!5;@87!_7&V@/LF'4[Z;R*>
M8\.W/X[+-D^V/X2H()OO> 8&!'&S_2D&$L6M9\!X;G\$WGEQZ[,2%0:&:/N+
M>K:K9==9?NO*ZXT+823J#)2755)"4^W_@73ETV"H63(4JT!>Y_-T0I=BC5G%
MTQ9P(P OD+R"*P1/<95%4J$0K&F&9W[5VG76S(2&#30+T?[^)IY!F,C! ,[G
MF33A;_"ZK@-?WK_ME5KHVC7/<Z%SA5 )5$M6+34,-5OP"NXD$4 K;GY.. "3
M 1JYP/+=6@AP6 EAK7Z;JH>*)%5GJ$Q"A; '$A'2=F\*!K^]6P4F71P*GTZT
MJ&TT"!2U',:M@;N;\FQH1P:^*KIW>I[5C<YS\2#!X(N!NSK<THZV!CS.C;AP
MR]+L# !%U'(N;(J.;ZS/(M!3C%MN69\U_7<O4\8<.5/?M3S+\WS+-.W  *,[
MR-GXD_,%-#-?":>+RX2,[A$*!A6 5&\550P"-/E>TS!>;SU5%9O\,\MR)'P@
M4W!%+Y&ZD2ZD,;HLK^ 9B"D ?U0FJ+R ?4 7Z!3<TR:7HOHZZ$W"(V -+K0>
M<0P2K<6$BL8T($Z."L+J6>_HBG")X\^DC:6FP*7K]VGU O@3GK4.U=9S((1^
M0O]^T/_[T !(4")^ >-(U04\$9T9Z8* "K#!P95;]NIBXZN5/XI83SL5ZSS?
MS2OQ70+K*_5#RX;V!'J2"!T1ZK:H9)77FA2"%.+YS<%NK+(!3(4A@-\XAFD]
M6X.Z9*7T\B8:M!K\<'2BI-\D/" ^!Z\,/;=ZUC8)1$3"'X,VZ1@T2#5+>8(G
MQ4(L4DC;,/",A',)H_2G4)QV(0)%&5OT5Y.&D(8\GX:\%6&+<%=ZG [<%ND2
M(4Y15W:H!8&3P/E\X!S,'U<E!,D%%SA$>NW_'H"5 :-V[GM67.$$AYSOVN!;
M- -M <U.,@AJ(W#PF^5N\[":E><W$.OC8H@F%I7D&UCGYG>W@F^5B_F;.7@X
M[_@"1"_:!%__;=W"]VF:Q9E8>'W3.5KO/OWM?>]>D3*1,CVC,N$D4>>[H":(
M"1Y^ RU;.2(UKZZR&-VEE%=BO@NA'N>9L 6  D(H(?09TUH @@E')P,H4CCB
M^!VFNW43K[\78O+P"\XQUBL*_7WZ9;J*4#LG9B(G(@5^\S+&#Z1=:* A@MXW
M'!V<+;V$EZ[F39,5A=>BR"1R_)S] [T>82Y06RJ<7&U))T@GGIVULV(F%[;P
M0$B.=,V+2T"LF(;'39H9.!8,?2#DZQ(7!FXP?8O5@'><",IXJO$4D-PY2)<5
M7KW.H,!E!?ALWJ_UX2OF:"C@21HX^I7P= ;.%KP7?H>XM\'H.6US:-%55I52
MG4@G2">>?U:G*7&U+X>GRZ6H%M?4Q [GGJ)Q;VM>TJP[P?$9X?ANX+)(V $#
MSWDE$J+$W!YZ,G)B'EQLN<+<Q8V7>1G!51R>5LZ7<IV6 ;1GV>4, LIX"<XW
M>"\$8 +P,P(XPWD)M/9R(K#/41'S?HUPP''V0YQ*+?-#P8FX A)FXLQJ0&P<
M\X78 X%3@S%-"Q)>GQ.O%T,@7N-\7H+L^B<7RYN(7;%HW_#+;J$GGH&(.,YS
M3\3R9;<HVB5^81Z.3'+AR:1?[.^G1/),3A+VD>%/9257^?L+.!,MKL_Q6X(]
MP?[Y8)_(U&K,W!)1(>:/]8N1X$_,V%4/_/4<1[G*NY[N N>+3N#%^:;[TFHQ
MCXB)U$^9ZR;R*]-N_K^NV_EBM0: 3#"(IO$*O",KY,9.L=J\LIA /=O7-^)R
MS"SJ<A1Q0T->UA#F(,55@MH6T*)DJEWDS:QL+V=(?5W*Y^U$O8H#[)'1M%7:
MXU;7D.4 (M"@"3XI9@4FZ%VV#*<&.']RZNQ&5B8^&E0J%F3=<C$EP;I)/MFZ
M^Q()Y=([,"6XQ&4!_["5 XTY)?+W'=F24^WO0^M0@-RCO,^"AE%H%^+V;S<
M9_JT3 XS&)YV95;ZM5,9?Z+ II0?WZD79M7":,Q7F<O7M[*-09[;'[7UZA/4
MHNY3E._;<@Z]6J<< PA:U,YF5J$ZE&US5\XL* .O<, _O/U9^S#DQPD66YK*
MN>$&4ZVC.DLR5@ESWQ:YR!_$Y,'KK$9U3B ::[H<^<W.=1//@QSES2\&DV?]
M-:MF8>]P%GO'$OQD*(6M.>W;[]JZX+YWBO?=?7V]XK#A9Z!HXC[H>95!' MB
MDJ)(RSPOKU%MDLT]3/UN+"V3VU%QAP&^?L;SA7@\YFM#BX260G-PYP!.W+3@
M@8'PP5];[2V*^[U%DU7F,C+ORL!)4>49.(<)3M.+N5"VR!J9Z@R/C?F.7'&!
MF4&K,['L\(\N_48N/,B@OA"5XT02V[I50U;M)-9G@^+.V+K//8>_@3[Y-4[D
MWKU'I.__15%@AO;MG2/_O5J.2#,L)J MP0'5I%C?\9C/(Q"F;4XTR[ <E%X.
M7ZRSUM^_%0_C4=5BUI(5B M=[0V^M,_]&[Z[7UC9H#7:NJOHUMV0MN[2UMU=
M6W=?X/[*3__[_O/_?GC_=^WBXSOMT^]?<9\E^6:=</[.5QN)X&?:YVGW&2"=
M+>/QK( &7BYU&0>!_6MO952MPYC)X YIC!=@,..E,)U=UHGPM'!]4FS#$!:V
M?Z?PUH5?(,RMR#H1YC/F .>)EF  4BXFZ_LG_>/$_HU5Z[II]"01B;W]<NC:
MI0#GKZT&3L$$;D5;/FA_MDH96+00,L1:S5(./D4&81^V]-,Z6Z;&.4\8=AB0
M509OWWC1$.FA=$8?,XS_Y)@.7_W)FYIV0=%,T?ZU^SV8"%3!]^LE>0QTTHK5
M3=7&&*9*<+_K4P0^\QC=_"5-W!,NGP^7_\59#I$((N^+8%SMMR[MA&;/"7O/
M7*U!;MB6TP*R@-;;["K#:4CMW]E\<2ZV;LM5>YHJO\=?7+D]W30V"(=7-1^F
M"4N_)P&M@:^T*Y:W?'.6CFNX2E=Q+<]2+K(<Q"0NZQS&29^.)G[Y!Q8D$.47
M"HAP1&PC'3#I=RW7+>H*GY%3103R',MO5UE= MR^=' C7XG@]GQPZSPC[<-F
ML$S@(_ =@.MPU:;)XIKP1G@[2 ;BI5BF6Z&-PD%"W#-/D5WVR3<]Z"CJVQ'U
MK1.,6#/I,UWR$E?Z>#7'2?FY* J#19:&<^)8Q4WKRCZ+C*?+JKS&E(UA:@.(
M$^!5+8<5 VM,U9F5N=AI77,N*F.LYO*QZ@"N>J]:(*;N.7*'V!F^-;/?S==K
MB6R#7(3DN!8OEA4J3&2.UB'I:K94UCBL15 *L2F,!!=3JK*FFOR5KS9SG\.#
MQ<06!*OS4F8H-*!:S7J-(BYK686N*O-SN9L0GBJ*_LGD)OD$K$DGR@1&O ^?
M,6\@3;E(P1;I3Q EQU59U_H_VBJK<1L[^H7 2AG09B^ [;U?LDA5U&9YTN\#
MD_DU(,<2UV5FY9SGHLA#/T^":Q6LJV2(#;[&%*HNZTILA=1F;57AMC->]P'_
M%1/I$&(/VAS//N@RRK_R&U9/M)\!QEG")MI':,!,>\M &ED!?_]28D(OPU]7
MN3#_FZ&.:!]J;%:7W/%;RRL8Q\]97$[6279S4 61 0F@2]*LDN_\+W;-LFRB
M?:KX)8Z(Z!R,-8"L@%?G&4BAR+HW,B%BK$Z$:7$@*EQW%9O<6)65;8VPO)3%
M]J"3L4P FW32G73BE5/HO7S%<E:O/J6<KL 4.42#*+\N*[=7F=@Y(E(T'C!J
MPY4WL20_'(7_9DT%\I2U=\&@RIE6+/A?-Y@_\@7^7JX%MR&N7DP+T(:VJW26
MLJNRDFG]?1UXD/Y0J_M)H57G\=FSLA7YTV"F,TSIB;O5AH&"=?J:;:Q)[%Y?
M7 EEOJI@.D$UB/B,Y2F.2)\U-=RT*W*/5EMZ!2HGZ[2E?G%/9CT-%:GN!_-2
M+HCVSZ"TOE5L4,OTH]O58NH9J_ X 9%*EY9Q*TX16/,DLB*0'J:QBK_6&559
MKZ LCG'_7E>80R2F@@T0Q@/3L,3J:L\K:',^O/UY5:<#FPF?Z8NV KCRP6+T
M&EARXG!0WT D8Q7EE9A6Q%W@&>;#8F:5S(P5C<(QZ-.H!GN[(CQ:82&VQ\2(
MLHZQ$;1H-*2N \_7K50B(!\\A@$:\5=<$Y]'62$ #OX7-$(6^I6HP^*Z.4\N
MUSO*Y()RU]=^]5AN56>@Z*LL-;$47DAF:63.HG;Q88*+T%B05BYWQWG9)GK1
M]UGN&>YZA38F[8H:SS@H6%Y>P^@G?>D5^3MX= UF_M9BB%"*?69S/^O;[6#K
MRUBAQJ$1U%?&;'N]?LYY9X?[#<C2MUCE5P.>0#'0+0"PP\N2*A.77:*=6LTS
M=QD!:!%$IAR[6; EW$0*O)'VOI'<+;TU67JA3W:OVS@6V:]=UC-6Q>&@2C#$
MO)C)W.T5,+M:@S"6LVPA82E<MQPDPJMNL_J@'J\0PV 9H)ON'RP'=%:J[-(W
MNBS5KE&B;.]JAP]'][#?&=&U,XLWMJL)6WS+)5U1E+"P(N<;CV?J:_[V!^=T
M-JW*_E4*PY64PCE8J=@J,P6?T&>9K#62WX 1E)P@DT(&Y7^Q).,*UKWE6>"6
MSZ;?7[1ZX!ST+A?[_7G>:= E1[$M9B(-%]RT1+AR=2F4\E9W.2H(BFNGC+;(
M50S3<*#K-L*%&"P1C,JV8JB)%E4E P7:74%F(DZ5$3L$99&]LNJ*SJPZO@F>
MU2ZKU7I3/R;U@L=8YV"CVTJ>-_3B*6:X164(0;3E:Z=R'<1)>[8)0>&85]*X
M]+NG5\JPWM&'-;N%LYEO^B(=$#L455V>NO!119 D3>L&YL'5[_;]B6ABX(UW
MSJV,V:!92UG+O2N+WQ9MC1G3ZT9-M9^[2N)]\78D.WP(-E/6S)#U;=9ADD@V
MXR46W%A%(]%R1RM6&U! 1+A>*DFJ2W/K1#>0#YN78E>8:&NR43!MH^0-$R:;
M5SJH?J$7N*U';C03*[-WU5;;*HC)UB60^_7AKDR.[%]5 E#DZQ*Q;(R;>41O
ML5#^3$O!VX!PNKR&FZK)<(=3YV8(YNRC$;F5H"<*)IE(JT0A=FCT8%UXE9D'
M'Z^7D3N:N\64$1^4..PW:.S<F[&F<D3WUFZ*>RL.;;E=O74@0E.3T%9;1.2.
MNM\@T-0^@%\M3O/Q>R]I8^L$^ 5MU=<<E)F?H(K-K.ZV:_S**N"&;J^&*\ .
M.HZYKF+KB$"N<&&!(3,)(1'?0*M H^2T <0Z0#V@RQU(\0%B8F&K9*&8!Q-\
MLJ,.KMBX)[49+L"*A-V1")WF(O-<%B!1T?7AOA/<9+(^*6!=K:MW%F2K:C[L
M \ZN=/NT^VK0-^(H"J "=^J_[N>8FA*=+?F&P2N'=+)Y\P^V[TX-#48Z[TZL
MPR'YP9XZ6M1]UM6#Z?8/;@X !0BK$ZJ*E4<]$5OB^#];+C&VC=G!OKPU> ?N
M^'W8[3&^@H,PXYM#:EJ;(]K%+3W29,RW>^1>VH81VH>ES#XLRZ!]6&-1J^<[
M0O'0YN28(E7R9.3#[$/[_/[+[[]\_:)]^EG[]-O[SQ=?/WSZ^(5DTY4(0*_X
M5^D5O]_A%4OGHI*!WK>N=LB#&Y9>$',L$#Z7UQH>W(RQ1#/K9@\UM"^:2&CI
M'>6V$$&^7!M?[W0?[&_'Q7 8CHK/>%%C<-$?*XU>X +B6%S8DZ%W[Z5WF]6Q
M^HA\KWCE>@D2US_+1,>P6)>_:U57T:,[4$U.B]SS[.X9]: ZP\ABZ+$85C"I
MVG]*6.[(T!*.3N=T8//P^= ;O%P'A[5LNTM6J453XW5_/0QNSA8U/ZMQ"1@P
MT$NE$@0F[GLEW@\-6'EA5UF=R87&L_X!_55P6;*9RV2%4]][/720>F] >$@_
MW76?.;6<Q]SVB'N"J6T=Z%4'[945&(/_'M5<A>\)'HDKA>\)#X9"XY H5%CB
MCQJEJ?$\7?K/GYKJ%MEV@:>P+S@-=UF5;9'HG5E.Q7^[S?(@556&P/C!+J+>
MC'T-$R/<X?'T!GS0+^IV%E):S5OS((,[JRY>%H_;'0@'1S'7CPUNFX0DMP?)
M 7#QJ[^\,IU7SR+&U?Q+/S6W:#3AEFN]$[M3T#ND\IQS-T^;>+L58#XY:CPL
MU.\9(\EHAJWP*(V%6Q079O>&_\"<XZC*_F-2LZ+6:XA:T^?@(^MYZ.@)DM\7
MRZLI>!(V"7N<PB9*(92/6MCC#51?^,!2;+L?XO<HM#UL:/L.UR&JFJ+8EQ?%
M*I5D0S1RTC3RVVK!7*S:?Y8KYL0J+X]5%!?F@0-9(J(#$]'_XZR"5NOX4WLK
M,GJ(A51@H5&$OH_4NR-X6L^K97*<WR0R>)!5>LJVQLWS/YZ(NHTWAGZFR5.R
M.7?OOK#<$T&]$J,Q%E=WQ $T<<CA.<0A#B$.(0XA#B$_A#B$.(0XA/P0XA":
MMB=6.7U6H2P#U72!G!.BD9.CD2[+@&A$!1IYQ()>''.."WI/6+O;V9]O#2[<
MKS)?/:_2/"$7YU'"?O'VX6'R+,J12',3O0\7XP^J(G(GISZG5,7;'TL*#Y*U
M$_@3SPP(L\/7'%#9B3R)/(D\3Y4\0V?BV!YAELB3R%,E:8X%B"/D3%$MCX#Z
M1"O_6E7$$G6>N#2).HDZ3P*HHZ-.-1!+;*H"2"F*/QRMOO$F <V /AFRC]K>
M12XID2BYI"?,G>;T44FAH\3IHSW2W=1Y0ONB7W0:Q3MQKIGVMJR;^HSRZDXP
MKTYAMAY+LB=)DU2<5'S4H"1IDHHKI^+C$R.)CD3W0I27+ I)DZ1Y1&F2UA-.
M29IDV$F,A,#G$-UQ=HJ*[G8G7HNW''3K:"=\\5AS&KCVZXT&=2.GSJ+(]ZR!
MY"PJ*W%.>L5S<69[6F5X='K$"PYW -O4S:.*/5"B "4*4*+ Z28*F*$Y"6W*
M7AT;5(DS3UR:8P'B*#G3F!B635 =&52),T]<FF,!X@@YTPXI(76\6Z2(.4]<
MFL2<ZC)G0,PY7N94 [!$ID2FJF)SOZ'[)#1\ NK(@$KNYXE+<RQ '"-C4FF3
M9_(^G["/E)(L5$JR^-)&^$?%XJ;+LBB;&:^T1"9?4&[%&$WGZ1PL?8+&]>D'
M:HS&_)K&Q#,ME>'^F%.["?#$S<3-)PE5XN85-UO&Q#6/'QX1-Q,W$S<35(F;
M!Z?B6M/CS_.?$C&/;F65&)H8FAA:889V%,AK(89^\:ME1-I$VD3:#ZTK'$Z"
M\/@UV5\";5/=]K%QM"K2/$$&?C'\&DR/O]:G"DZ/7[=]#T5-#II>HUCVS./J
MMG\M&Y9KP^KMJA(064**5M2SE12MK+9.&=;$=8YO4$\I7#E!P*LB.N)F@BIQ
M\T.YV30FKGW\(BK$S<3-Q,T$5>+F]9!XE@*;ODZ)F$>W-$L,30Q-#*TT0],J
M[(MF:#5 3:1-I$VD_=#%77\2AJ;*:!\-;5/RS-@X6A5IGB #OQA^M:8>X529
MY)F^6,VN07U*1@TES]PS?)\6O&(-7"8S9T0UFO<W"U[4O#ZC8[+&<E";&NP]
MEK/;2)JDXJ3BHP8E29-47#D5'Y\8270DNA>BO&112)HDS2-*D[2><$K2),-.
M8B0$/H?HCK-?F.KS[WU=\$/15>+'Q9":YSDNC_!N4435]=E1J=)+7("E1 %E
M$P5,VYP$"F1B$51/7G3$F03$E\&95C@QPN-7["2HGKSHB#,)B"^",RU?@7VT
MJN!T=#NPB#E/7)K$G.HRIS>E\'RTS*D&8(E,B4Q5Q>9^R73BA\<_#(F >O*B
M(\8D(+X,QJ0J[,_D?2JTC_16I@4E57S'\+[C<%.<L28K"Y%8<3$O05K_$A_0
M3M/19,.IP>YC29 C:9**DXJ/&I0D35)QY51\?&(DT9'H7HCRDD4A:9(T::?I
M""5+TCQ):9)A)S$2 L>TT]0]YDY3:^K[XUP488-%$577;T>E2B]QA982"91-
M)' GMGG\@UH(J"<O.F), N(+84S7IUVF8P,J,>:)2W,L0!PA8YJT56J\6Z6(
M.$]<FD2<1)PG -/1$:<:>"4N)2Y5%9M[/GO/I;/WGDJF=&HI,2<QYTMC3H=.
M+57PU%)*K% IL6*XN50K4RTK&E9<9E'.-5;7' \ZC?_99A5/X"LM:NNLX'6M
MQ>4\R@IQ%Q7Z'IMMO><<^PYTJLC[!*WO(X4[0OL<3AS_^-5S[AD/:;$,F^!.
MS$S,/'JH$C/W0Q),+ 4.<2!F)F8F9B:H$C,/5U9#E:&N'"^/;O65")H(F@A:
M98*F*8T73=!J8)HXFSB;./NAG#TQ@^.O%)\2:Y\@W%41W3B8615IC@6(8V15
M9VH33I_%S56@K(EQS.R;T=1Z_UHV+-?NK?BN*F.1Z:2@1CWC2D'-VOQ._-!5
M&>T4U1 U$S6_&*@2-:^HV9X$'E'SR/&NBNB(F@FJ1,T/'!)[:J@,=>5X>73+
MMT301-!$T.H2M#4]?M57(N@7OU)&G$V<39S]T(V>-CG5(P>[*J(;!R^K(LVQ
M '&$G.HID&>N"DR/GERSA](V!\VE42Q5YEH*-RKSY+MS9SXM>,4:N%A[6]98
MK:9(M/<W"U[4G K3C,TN4KQ"\<I!4F>\B4<[ L8.>%5$1]Q,4"5N?C W6Y/0
MI2(((P>\*J(C;B:H$C<_-'G&H.R9E[TX2PQ-#$T,K2Y#6P'5#WO9#*T&J(FT
MB;2)M!_J5D]\Z_B+O:?$VB<(=U5$-PYF5D6:8P'B"%G5HL.AU$F@V4-U&DJ@
M^=X$FG7JS(<B+N=<5?(A*WCBTB0KJ*P5M(.)'1Y_TIZ0>O*B(\HD(+X(RG2,
M2>@XA-21(94H\\2E.18@CI R P7R0E2!Z>A6%(DX3UR:1)P*$R>54!\M<:J!
M5^)2XE)5L;E7+GUC35R7XO:GTNF/JD*6_- 3ER9QI[K<Z4TMPNE3'='=U'F<
M>B-TF,_>E>0#ZCJOFXE6\$95<B(K>>+2)"NIKI7T)[9]_$QM59!*$09QIUK2
M).Y4ESN#B64?O[2W*D@E[B3N5$N:Q)WJ<J<Y/?YI8JK@=,^S,PH@EJCSQ*5)
MU*DR=5+ /E[J5 .QQ*;$IJIB<[\'O1@FP71D,"7O\\2E.18@CI OWYB& O78
M5 'J\?,J]E"&@O(J]JXEGYH9K[0W7)[J\J.64;6*,=I+JJ9'U?0.8G,GAGO\
M9,93*J='BY'$T<31Q-$'XVASXM&1P6.'NRJB(V8FJ!(S/]1[-A38"'1*Q#R^
M-56B:*)HHFAU*=I0H&;(BV!H!5"O,*:)LXFSB;,?7IO$"\BQIDEI\JM/5YHG
MR, OAE]-SZ$],@IEVNRA@@D=^/*]![[(8UZTB*=EQ;M#7[2O[(;7JE(1V<03
MER;91&5MHFU,#,K7'QU2B3)/7)IC >(8*=.9V#8=&SDVI!)EGK@TQP+$$5*F
MI\!JI"HP'=U*(Q'GB4N3B%-AXJ2=H:,E3C7P2EQ*7*HJ-O>[_(=Q.RW_4>H$
M^:%J2I.X4UWN-*TI37FJDSFQAQHEE#GQO9D3OU7E559G9:&E9469$V,VB93Q
M31G?AUA*G)@N;7$?.=Q5$1TQ,T&5F/F!0^)/#//X4^_$S,3,Q,P$56+FX<[V
MXT]$G1(OCV[9E B:")H(6EV"-J>.RE G@GX9ZU_$V<39Q-D/7=^U)X%'\QV4
M/T-^]>E*\P09^,7PJ^M.:9>U.ODS5'GD"/DS'WG39<VHRCQD O?BN%E3"SVW
MI&RCG"L7J#R6?7Y0 +6/EO,(;:KE30+W^$;UWB%1+FH9BX](3$U,34Q]*DSM
M3VS35QOZQ-3$U,34+PBL1-#K07&GQ,XO?-&6:)IHFFA:=9H^?OD"HFE:&R/F
M/AD@TU2(6A3^QO%42U\?*X=3HLW8"%L5:9Z@&_UB^-548"I#%9P^5YX-_,+
M5@PZ)!J2%0G<?^9,7=M^?7YW'TT+_E8A:V7=NOM:(R_%5YUE#;0B_@Y)?N97
MO&CYM)?G8YK]':U\4)NTKS.N)3RN.*NYEA5:)1NI7;-:2ZH,_M"BI<;6UY2I
M]H/M3#T-WIR+^C=5.=?*MM)^GWZ9:BD';X+EVF4)&E+,X2U:G&?PH]8650:#
M">W5X-D,WE2W>8// [*!]K&&)QJVK&(Q7 UM::!M:5;5C?;/EE5P%5YL&9:K
M)=#"IA077"1P;U;#70VTYM__+;!,_[S6XADK #>7^-:RRIH,!,2*1-P"SX=+
M:WS:NT]_>S_!]ESS/,>?^'V2U56[P&M$Z^"39KE 9;^SBXNJC-N*R^XNXYQ/
M0;!9C5++LT)*LTS3FC<HS:R0LA0M^,'RIL9*F-C$'\QI<%NZ<3F?\RK.X,5X
M488478@^[Y3V!.6[X-#3*YXOIV*<TS+/RVL4RC6ON!01KX>COGK;%0Q4V=;=
MTS08MS]Y4Y\-J2#)KN!K5M=_>05HG>LY#(+.<R$$@=@%KU[U^.ZT6- G<((5
MO#X'*2]RMCQ+<WXS9 0/P/V/MFZR=-D#55P#:@<@.!>JK^,;Z[,(A(CRO442
M:[@C ?FO]\4:3U<_9^J[@-# <T++]AW?<E\/,P__Y'P![<Q7TLD*[* NA'2/
M5-"[""S+6[D7.#J]OR=>;!K&ZZVG'D\*FR3TON#5Y7*BO2^NLJH4,)YH'XJT
M8J#6;=R 9DT$Z-]E-7P$//"9QXCXY28^>QC7*PU#9;*G8:]-$ZVL-&]JO9[T
MW+;FI-MZ::YOE'II##[8CUY.!JS0,ZQ\NS?@ /%R:VH^G'+Q#O$=H*/AXL^\
MC!]"%"L-!P#U_Y*FDZ;O1]/_B[.\F0D\?BF%SOQ6E9<5F]=W:7*O%<FF0@I-
M-LVI>X<J;SDLUF,<EHE6Y^@DPA/OLMWFMI8:NTSWMS01/QS0""DF*>:A%?,+
M!_\U:Y8"BY_ Y:VTM]E5EF?0M']G\\6Y]G8;H/<87= 34 UK4UF%KJZ5=!U<
M;*J4/;77]PWU:=)KF'V?$9[<:8$GC[>*0S.]'0JMN_E@8MFIRX\+G[WC1,_[
MAM_G/OX H(AX:U9QKLWA^UFM<9!%HOW*JGBFV>9$1H  FKQ-X'5U&_5!(]R,
M8UH*^"99!<,'R*AQ-*$K</? F(1;MB007J$8P;O"3D<&D"7$_<*Q-(V!49&!
MFV5,W34<'MP9O!E?L(VZ/F"5HZC!,^L6[A-]4FL:86.."/'\?S1M2(#_$HB^
M.;/.!6/*P0$AG4&+VWFQ:8FV9]&F;E:(5W?[N.0'.ZD8Q'N^*.M,/+OB.4-1
MGD?E#789N[%:[KAYX"3<4R:HUA.I*@R29>X<I5FUY2%T]DY8M3/6-N7YYA<@
M8_GQ@EUR:31UED)'SUA^S9;U^:N?MH=_<Y(51V\-B%L#N]_Q.]#2R;X':\=B
MP5"M.J]OSN#V[B;Q$_X>N'R]D-T=,GUU8B;G"!.V[Z0)>8MT^Q2V?4K3']10
MM6S!QI0R^DC!8((3S-C0,M^:9ZYXT@K+@%<^S+;OB-)8L?(J!V_,6=0]1F@!
MV.&T@NYP+>(%ATYTAE7[^1&&^[M>(2? (3A# P$DBE+:E K.SWKVU'DMGN69
MPCNY[1P\1$ />YGM33WY,CN8!J^WIX\O;C^C\_N_M^OR;6'?-7B;\_BNB8=9
MUM27#X,P__;#OM\-FVI?T<G[IA17:R5BM*RI\?KA+YM@S+)@ '=<R(";@X??
M[$R'=H%8_'X^^E!TXRA0Q8&&BDN-WRQX 2&G6LSY8.*9B# SNZ]G6^&X-0RD
MX3668)0A!O'%8K%,6W)63;87Z8:4NAWX9L6Z+0^C@8E8PH/[X/5-__8,&A.+
ME]6@614K8MXO \9M58F%-@XM3/IX;G-9;2LR'X9B\)1+>'W53=*SP9KA%>]I
M_V+=X8?(]QY"6(L>>F;YWT4,,@:UO*E)A/!,;AV')L29F"&2<)B759/]2WQ
M?MZ#V>H3J$ARGRR_ _2HR3^X@ZD]J>!9W5$4IIB@,MW_/E1[=SC3/W[]V?>H
MHO,^=)VWY9L!V167&0X'1* <':/XGVV&-@2NCMH: M!:C%J4R4E8Z>,/)G[7
MN1O?]W"D9/&W#&57&2+P>3/;GJL[W1$]BHL$DN,UF+V"-VJ1S*U@<K@(+_R.
M0=,G6U 3IG33+9!V7=ZC@?T'%U#[77Z5YB4@4<Q2Z6EVPY/-"[7ZFBTT=@E4
M,A?Y3 #B&4\NN4 A)LP(DEK=LT!L2UR7@BFC1D:W\."-5G0>A7#3C*G_B/GC
MH1OW@[GC$36;\\YW0J')(.<#3J'7Z !U64YK_TO<L]G=R>Y&?R?%>P-VWFBU
M/UQ'N;O5,A#<'D.Y&C#LRO98X<O=[W&I-H7J8G",MQ*U?">UR+7$-QU<?L21
M*N=\JJE$,L@Q,AE.F)F=+=YMQ)AVR;*B2P58JQVX*.5E :U,[DMC=%814F<.
M$P!PW628[]2SQB M0"ZW8@BRLK)R!;,62Z=";6!\BRY6BI>]:MR=1TE(_@Z4
M?/O$1XH9'A0S\#25LW.]:C7L1F+U^Z?JA%J:$.IW$X#&K0E F?J:9/!2U(J[
M%+D8-J:?JD"]=@;3" _3ZRZ$QP<M<E:@5-"TRK0<>2M(I) +H-IU!LXK/DID
MCX""5*R0#B[H?-7FO!9?F.==(@$^K2W G\E%.WJEYS<=@R$A;3!#PG%Z/>D:
MA4_/5PYW"=95.NF3E<>-=X(KD^4R:1JN@B'514H#]#//THR+V=DZ2S*0(4=I
M@F8D<J()1 2]1-\+W'_9Q(UL"#'6_++-N]@ VO%!)FSD6I\%\+9,N!8&OGKT
M=,SUOP>L=9[@7HJ'%0O]]%'_V\7%;]JO[R^^_/[Y_1?E@'%,UV6=UB]VXJST
M4=!5$6,2UVJ_ VIE(=T)B(C T< =#ZS1P-$%-6^TF.5Q*YT2#/[CN*P2,0\K
M:*J;0\4=''',%W@57M(63;?3 AZ]R/EJ\X;0_#<=L2&+X"!V=/9CY_5D%1!]
MW0SG><1M8KS[1DZUO\^R'%=:@)OS#'A"-AONK[G6/WE7[WI98 )"1ZI9 :0Y
MEQP(;<@*]+K*2E+?G"WA%5I;\[3%2S5^Q?)6Q(7"(5N_8O@8,1.%;%N+ZXK+
M4@P'&)Q$Q(D1;] ^M !.L!=]##-D7^C)4JMG99LG^'X8..!77@FJ772V0[Q4
M*YAP$/$A.&)B&AKI&!W'SH;N;B0@408T.T9V)?)IE_TGAJ- =D>))& ."XBJ
M,H KJV#\X668!+62_$K>O:%M<.FMF;4U&)-Y)L0G![OM@L9^O-'.+'<SO7+:
M^^Q$]_ZO'[Z^NQ!C>Y%@@A/(6'Y&C->+B(F+:M 2]'T&$T#@6LBEX_LGB7L^
MDG)=L5&&>M3!&'D&<0J:VZD_[Y45>8Y70JE >:;;PX2/Z7Y+<5H2-(GU5^#3
M4!EPI]O6?$O,*TS=T41.M:0V:$)22D[NN$ 2B5B5BN7"53?9,6A0'S?V%+2F
MF%6_MUK<"P HEJ][*XE5-EW.H A1BI<#GX(?J$6LALY&8ID+O@3<2#\6G$2P
M!XUL(4I?>(W]W\(QKU<S3M#?29?+N:8(A(SD-];M_5GOS[N><2%5$ ]&Z+&P
M 7,4384IS'B)6%+LY%"@7/)UQ(R]Z/S/2O9 K?B(U/R;3+CR55#S16PH]6)E
M@M#-P?@Q9O4,)W6ONWV=]>":3K6Z+.*5_HE;*B[6'"3L1<(MJP?3NFS9S8>*
M &_U5\P6.*4@)T83,8E3]W04-5K-JZLLYE-*E#V!1%F+$F5/.%!^X8FR!P@Q
M,92H!3VRK2!33!?Q9C695FKW$'D_W2>7>.K>L^')'B9^QH)F46)#"GW'/C[!
M+IVF8_/P^= ;O%P'*U&VW26K_6=3XW5_/> I9XN:G]48%H+8>ZG(2B7BOE>W
MCM+!*7 9LYWU#SC?<4:.?*'G33W??CVDI5X'!2_]=->-YM1W'G/;8^ZQIJ'U
MJ#:^V'X]X8RE78KTE(.73K\NS]&J<9'HOB$Z@"Y^]9=7WJO#B7%'EY]3K$]S
MO!]W]-=7L;KWJUS=>X\1G +P54+NSP=HHNS3X1T2G;*4_?1#HL=*ZJO\C,/B
M^M&'1"LQ),3W=Q^#>CJ'W3^O8KT1:^EE6[,BJ1]5QO@(VK5[%((1&!:+#,MA
M\8\)=2>">B5&@YQ3XA#BD%L<XA"'J, AC_!+8Q!6&C_)!7U4_?P[_%)5R&JO
ME?(_KI;L5#V>8'SFX&'R?/'G#ZAP:-%+.3##\B:!:Q)DAZ\9P=$NQ)TG+DWB
MSA/@3C7.M5<%LL>>Q:9HX?F@OE$N1%6*(:-WXM(<B_<U0EL'ILXF4S<VH!)C
MGK@TQP+$$3)F,+'L@(!ZY." EA*>/SC8+).T+JJS+I.D&MV0W3MQ:9+=4];N
MV1/3-0BH(P,J,>:)2W,L0!PA8_H3PPP)J+2,H.)P[!7I#SJ'037&(=-WV.S4
M4^6<PT+UZ:F_8S&?IC/QPT=M&#@4VA^S<X;P3M1,U'R24"5J7E&S/0D\HN93
M"'_VL% RK-8%(CYL.#2LD65,0^OU1G.,0]4-VZOZW*X#3,9W!,97%6F>H&E]
M*8;3M2:F;1-21X94HLP3E^98@#A&RO0FCDW+*,>.(V@9Y?GC@HO!D;BBW/SZ
M%$&]/V!P=6CYMP\[P,[JSM0+PN%_=T9P:XEY4Q\NNET_^^$]>6,^JKX1V6JR
MU62K3]=66RX9ZK'!E/CRQ*4Y%B".D"\]CU!Z^NLC%-=\8\2^<.B\.--.G)?9
MG4I9-_7PV/2Z86FJB=.0+PL\B4OQ",>B"(<LML)<J  01VBQK8E+NV!&!U1B
MS!.7YEB .$+&M!5(%!L53&GQ1LD@Y^T,7LXW0IHR33,(>N*\%$<5*QW/2,"]
ML2FJ(1NM,/DI ,01VFC+I8G(L<&4^/+$I3D6((Z0+__]WP++M BJQXYK:/'F
M$%7 N-ZP&^V298665N5\F)8&(8[&M*BMLX+7JN>D.13;C,U6TWY7VN_Z@NS]
MB]OP2MQ,W$Q0)6Z^=ZO!Q#>/O\1T2M3\V$.(=OO/QUF/HJ($>]:CKV7#<NTB
M^4=;-YA^1T6>R2"302:#_(A"T88"*1^G9(]/$.ZJB(Z8F:!*S/SP4,D*')71
MKAPU'SU4VG/]-O&6H\5*YC1P[3$$2S),XHE&I=Q>@$&VIA9R5%*V4<Z5,\FG
M?*3TH^4\0NOLNA,S//[)<O<.B7+V^03]455$1TQ-3$U,_5BF=E6;XGH13+T*
MH. 7!OU\WFZL\?HPWA1O#^#E][WO*7)(LBLMSEE=_^45M&&NYUG=Z#SGN%XC
MVK'@U:N^G4E6+W*V/$MS?C,4AP<-Q.@E2Y?]R\0U>MVPJCD77=?Q\?59Q&J>
M9]C$+2&MFVQ/;;L/Z9X>?#U9@EUS!N'RGYPOH&7Y>2^/K, NZ4(L]\AAHX@=
M"KX??O$>TS!>;SWQ:'W>6L>;\9IKK.+:HLI@W.!I6C/+0!X+Z-;R=N$-MJXZ
M6(L"'1D\ZK*2ASEA?N?@^^D*C2"1_E]"Y4%1:9TN*B7V$)MS!LU;:DG+$8)9
M<57F;0$]7&I\OLC+)8?/>05/DS",>,'A@;4XB;ALJVYK955/!&+[>VKM>E9J
M,W;%X0Y>:$4)<LP0YC/6P#]\J5UG>0Y?KIX.7[):0]78RF6N>%E=LJ([Q$R#
M]_*;K"$%.+X"V*>K  C]^/9&84!FOTL840C ;C#;'HFXDAK \@[R1,$*(- Y
M101N;.38 I]E6/;VO@ZDV=^G7Z; VO,YK^(,, C#_2=OX%5KGH3VQS,\'3YO
M$V3X K_&\EWXGEH6]/H71Z]"O"G-JKK1_MF")#G2.+[:V8GI!WCVIO4-Z3S3
M&L&U7+*)RCS97K[8SUA]+ O];Q<7OVGOLKP5ZPQ,W 66"J3V!1B$#^."E:B&
M*RO.U$7$WRT][SC">S99)9VL^%!6-<I*>X,9_)9Q?ENNOWT17YGG/P)4H:$U
MIKZM'B7P+VZXYZ'KBW8]E=^@9J#*(/RS.4BDV2!Y)%3T5- 3B<HK/MDX/14O
M!3O BLL,XWJ@>-YT7@\^K]=CT+]R#EX-Z#=/4QXW]53[^RR#.QII>-9Y?:#$
M2_2 *AZW584-PX=! ^ A:<7_V:+R@KO3%FW=LGRB77,M*<4%(/0Z2T  MQ\*
M1 +/!.AEL=B8A>W&!H*XP&>;B^I_':F4Q66)KRWA.R;#"NWOZ+'E&;_B*U]-
MJ]O%0IHP8)[ANQ95>07-T'!FHS..;<W3-L<>X,N$X*1?"8Q65@.C^=*UY2MR
M<)GGY;6 )$ZB:"O8,P1%6<19GJW MQ/=*-Q=NB3\\V[8LS*I>T#P9 \C<*#9
M[WU+_-8TCIB_DI+?L4;.VJ;LI_:P>?A\Z U>KH-/4;;=)2MW8PH.1W<]@"IG
MBYJ?U1PB&A![+Q4Y^2?N>W4K >$*HOL(AKQ9GO4/V)59(%_HVU//PA?>H*"P
M<5U/0?(WYZ]^NNL^:^H&C[C-?,P]QM0^T*L.V"M/Y)D_PZN>D+^_2X>>DJE"
MBVJ/7E0CT7U#= !=_.HOK[Q7AQ/CCBX??L'BT5'- QV*BG/M5_A[5FOOP90G
M"L!7";D_'Z")LD^'=TATRE+VTS/#QTKJO[(JGFFV.3DLKA^=&:[$D!#?DZ$F
M"_ \%L B"W!8"V 9UJ,RW(C\B4.(0XA#.@YYU&Y#XA %'$BJK?G\VPAWKJTI
MD.ROBK#'L45%%6F>\O:3E[*UQ)PZQ]^@KPI@:7,?,:<2TB3F).8\*< >>]:9
M@H9GK#VRWH\E,C<':=MZGP[*;Q:\J#G5<"2+J##!* #$$1I"[!GA=&0X)<(\
M<6F.!8@C)$Q53O<8%51IQ4')X.$+A\Z+S5@8.I3-C%>W*T+4#4M3N7/SLL M
M5ZJ2$5G%$Y<F645EK:(Q-6D^;6PX)<(\<6F.!8BC)$S#(IS2 H2*P[%7H+^]
M7<!(UB;J:QBI?A"P20<!DWU6F/<4 .(X[3.MBXP-IT28)R[-L0!QG(1),T#'
M#FAH4>3Y YJ-RIAI5<ZW2V&NRP*K2C]D!T]<FF0'E;6#E!\P3J@29YZX-,<"
MQ!%RYAOH6DA ?>+^H;V=(DO+(@?8E_&MJMWR))U*UL)?U<^/RWG4'7-2*[UL
M(CET</R,:C1*]OS$I4GV7%E[;DQ=6CP9&TZ),$]<FF,!XB@)D[:CT^*)FL.Q
M5Z!_N'7R4'_TS_#('J4CF\&)@JHQ(YGH1TKSD5493Y4<CWD8_&-*7H[%S+\Q
MIJ:O,MB5.P=^OW.A1-%$T4311-'?6(H*5 ;[R"GZ.,M5PY,E[PPBGBN.Z^0M
M'RO.[1LVQS@_Q3AOUW&?"O"<*CHS1I-L32VDJ:1L<1%3-:-\RD4Y'RWG$=IG
M<QH>?Z;TW@%1SD"?H#^JBNB(IXFGB:<?Q].^:C-=+X*G5_$3_(*GP-\19]A3
MV[9?'RJT^,::3 "OON]M3Q%,DEUI<<[J^B^OH US/<_J1N<YQX4FT8X%KU8G
M/259O<C9\BS-^<U0&!XT$%>GLG39OTQ<H]<-JYIST7$='U^?1:SF>89-W!+1
MNLF=[/<4CCU9@EUS!N'SGYPOH&7Y>2^/K, NZ4(L]\AAHU@""KX??GFVO&&\
MWGKBT?J\?2@UK[G&Q.ZM864*+>YJ5\#;K[*RK?.EEA5QWB8R*_-"+%EB</O7
M#U_?78@B>2R. 5V5*'61<+@QSF2.YZ#^19K=P"]=FF=:5AJ(I"C@HZW"&-,5
MD$&8_;\$Z(,"VCI%0/\,F,(U]4:<MCXOQ6GK'$];UW[MS^K5\,Q& 5D\>&VB
ML8<G)(M-CSM3D@'=#<OADA_"J:M!+_*^[OP/P=3N/YB ,M0+'N/">[XDE!\?
MY?8IHGQ'+LDU1]9F>=Q*LD6,7@I5D%< X,3UR,^3+N4$ 0WZ$H-3B3MZH:MQ
MQ1NN"6!,M"P%_"XGJ!*6.[5?=RHS=5Z+V[Y7S3:0K^V"OO@7/+CA4/Q+S ;?
MG%GG8MP24,-8Y*^ Z-MY<;ZA =N.\-0%?Q:%V$VCRP]V @(:OR,W)BIO<.QP
M0%8>]<T#/633^L9XW^-*/NT4RG5S]@,WR]YPN/M1FE5;_G6G=4*WSEC;E.>;
M7X",Y<<+=LFEZNHLA8Z>L?R:+>OS5S]M#_]FG(2CMP;$K8'=[_@=,@[8XV#M
MB)"&:M69ECDH?'^3^ E_#^Q*+V1WATR?'_U/L2ZW3F#=MWQ_^? _OW]X]^'K
M_],N/K[3WE[\]N'KQ2_:Y_=?/OW^^>W[C:6>E9B&JUK.U+T__O1.3W#B56<9
M.$!9_#VBS,"M2K)F*:S$7\NJ*J_1:KUET#[X^-O)D$?$P?0IK=MW8[0/X&L"
M4PH7%N*LF-4S(53Q"P<Q7X%SB@FF\/U,1&O]EY>\Z((VX=R6"_P+/5HP_"T$
M:%4&@%MJ-?P1BR(?^6K4LKJ[!ZY["^YQUF@_P\#E^-UUUD +M'I9)%D,C\<[
MYVW>9 MPJ\%[F?,*XL-<BUCQ)[R*U1 S@ON113+ Q%H"EG'^L80[W0=DQ1X1
M"*+L@7FN%!S>\:@1(C3/49KHJ@TDBL&*]A:&&/,JQ-#_#&%,(<;C2P,?B%SD
MC?MAJ/^G!;/.JWRI?>8+B)BFVE=X[/:X5UR$2O"*&6O *X4/T-;@4V#4%WDF
MBNH+=/1^9[IZ.8(2.J:O/XG+*PZ_ W#?"(C -]#<:"FZU+W[XA*<4&SR1*OY
M1D<UT]"ZX=%^*<&-^,JK^;Z%@^B_*(H6OI>"$=YQKXWP:<*AFWG]XU2[$#G?
MFQ[R!(4DO/<=(L*VK46 XH&+9PR"2L<)ILXZSKR"-^"DI]:"E:F&TEF-#$Z_
MM'B8 ;079%$BTPZU/6U%&1^V/C8-/@27(0.SE6@+MA0=GXA6U#.<,ZKX DAA
M!@$DT$1Y6;'Y]&3-W[Y5\.\X3A!S"4=><!K*/R]!VL*=U>546":^KAL1EVGU
M-5MHK(>SG"%C<F8!]**#$S!Y*^CT!]-WI\8* _#\&4\N800U1&$WF8&CO7JM
M>,D6+J0:;[_Y&AZ*I^-E$I< U*"'WYPM 9-%G2'01/<02:)_ ]!O/S#BT!D,
M&''"D=]D-39(-KCN7G27?B"8 :<8$T'<L.H4RD_V* &%UH;B77]Z#:QANZ\)
MEX,9WZJ;\>T.-2F27MGK%N3.:B'PGB&N654C G[_L\(008  O_\U2Q*@F_<,
ML(N?7948'@BB@:LO\S("$#052[CV1LX<]_,1V;R/*<0&&%9E:5K_.)$&(X:@
ML$$6ZXR#?!S>UCV20X/+^1)8<Y9!:_'+MBH$*.'!+&[$?!Y2F^@>6*[BLG-E
M6+0BPM[IT613KKCTA0! U_6V'R1/@-F\'R05\[I.VQS,(;_A<=M(T0B&_9-C
MJ^&Y(F"JI]I_E==XGHQL1MQ6%8P%:$2>\12=*-%S2?6K"<5N(A*&E.$[!EX:
MO %9>,7XZ$%IT<IYCCOG>;)V\>YU!(6F WTCSXM&=!8\&3AZ\@$+=/!Q&D>X
M@K56<)0!.H<KT[+#K,1M#0J!5_5/$(=N)J)H''S_SY5;(9K8&QR$XY:1Z6Q/
M65VR(HNU2^AP,P/26)%.OA3&%,&>%:U<M6#P^?)?7$J^:T#=5&TLC!TTG!=B
MP>.ZX^O^FKY+G56$6T#ZE_#:H7TD6AF8NPVQ@PIF33=)6#>=_X]_K%T[Z-F?
M.+F.=J.N<3Y=;(:3N)::!O?<!O8]+DY/3GA2DZA'N+9'_;C*&7P@!VD?\ [$
M.]S<M0< U>"R5RT<2H"%T-,K@1"A*Q$T$O4.PRS99?$[$XS0&;B^;V4QB'5R
M](Y9#<T1MX,K*KEE3<$XY0JO*3@NDMUN>\>$!6>5N/UTX7>$R89W/;&H%;CW
M?B)$6* OF-L!,%FP++F3&,4Y BW.O9;QGS.0(*^$VU2!::P -XWV YY)A"Z3
MI%#P\(0'><N7UY*VZJWRMV?R18SR@S7U>H]3+4$>6A?P:D7)^.TF7A(>YPP-
M>C-KP;L!\I >O2O<0(9A1HZ.S]E A"*/1J31[,JA$9/XW80Z=@A;!-R E^LY
M6Y9M=\EJ'6UJO.ZO!Z'D;/'_V[NVYK9Q9/V^OP+EDVPY6Q(MDKK:,U/E./$>
M3R6QQTYV]CRI(!*R,*%(A2 =:7[]Z09)72S)UEV@A)?$D@@":#2^OJ#1+=BY
M8#V*0C6C:Q*$)-N=3-V#> *1FPB%\^P%LRXX)!V62T;%JK\=]_YGKF[I_C^;
MU]""?;-",W.5-E6C:EEC-[A7&>\J':\ZQ[IAU5=IN&I_56AGO]IPC4LSL[;C
M.C=I]GD'+4.?;1YKK7<F.27QEQ+:Y(/$L,0R^@"@L4J Y7%<2MMRX#:L-_[T
MZXEUHO?"?O;"'2AV#ZC8Y603*+$V>[O/H*^"[(%T&D7FK<9]8B5J&:HY_D@X
M_B[Q=LQG^542ICF,[2-/].KY M5?W<7BNUDKC/$PP:HE;BD%+K\=/6H=9"[&
M/%_'/):KENCGU@RK+[L?!')J)6!1>B<'4U9=:P":C_/,QY>]D'O$++_ QSFJ
M87/TR_F9#HBI,4E%3#H8)4];)=HJR17#'HKV<:S(J<7_HO3^/?89J6KYK[DX
MWUSL@1;[DAK[0IZM?(1;[B'X6$9D7GO!3[5B9O'F5Q+\R3$,. GW3%,S19TD
MRCB][(&!ZK%@,M(XN2NS= J0@XDOK5:-U<(UC>JNHDLMH[&KKG8Z*6LK?2D1
M1;K)6*&C$?6::(O&:U9GQVMNF("Y4HA6BR?Y*@7>YT3@?42!MU>658+BVV/B
M0X3F U\R#=9*@O72$8*J<.IVX7QHK.R0EU>(A55E,332SREVM,KVVOL!TJ8W
MTZF\HA[$ FQ^L60EPCWLJ-GTKQ^  )ES.TL+D,WS_/+^?BT[M,JI$>.H$6/)
M  &-& IHFVM=^EGU0'*QTIIJZY*+U<UD$9''9-]$D@+V-DDBYC^22\P:SR/.
MQ-*[9KN'P <I$1:@Y*:CDU1@WZW%TNV""P\PBN[4M@LE>WDYJ?DTH^#R]K=&
M2XV6&BUSB99FJ5 JF9I/-XR6N[Y_H\V$9<V$&_^)"6TF:,&7SQL,6MZM:!T4
MRA5+<Z<V#C1&*D!'C9%J8F3%U":! B:!/CG8B4EPEU0QD?7!TJ)=VBS0(D^+
MO*,1>66SL,K9NN9.];A30V-NZ9A_YCM :*P7ZK:MF7,SS*F/!12S 3ZVV\R1
M-=\^]IT.]1\9N9?%3N7?LA ;F@B%Q%#X.*J#F-04O&<B"KF#]17Q ?4 24O#
M7<6?YA62=LB>:X;U'HI$K=DU9=E[Z4LOFL$U_FK\S0=[:OQ-8YYJ>S[=R T
MZQ,0U=!]\R<@B=7#M:%S](+6,BQ$(C>(,;^:4J(VMU'$JU'X *5NI6#5EK_O
MO#MN5TOPYDVU5()H&I U(&M 7M@,*A?JE9+"[*X6(F_)%-II,N2-61>;SB@L
MC8XXO9D1#"]PTV$(%GSO@.$GDB"M-Y9ME CTZ6%=]R@@;^SQ+]R8X9<RRS#O
MXHN"-KS@*> RL O3$SNQ (*P,$E0+.*68#]BK/:)67R9(^O%9QF+\8D>'61-
MGYCO!B%^TTWLHZ#=%F!(P;BPQUX8P-QHDA08WR&[@YF&,!MAC'.#7O)LR?GP
M,L[8DKML?,E+AOE\@>GP$7R'0WN87YNP?@]6B$=Q*+-.9VOS_&'H'9;*8<P5
MI!T&7;EX+I?CP+;9TGTS'@Q8ORXPB\/A]4#>[TP.M14+[C.AUW1R37MCT93M
M833EW*UL ^H_7]C1$SXN7A"&,M-XNE"X*E<A@R4FU]1)]IG<Q9T@C(H@F[MC
M30JP44$84<\;C#.#/^P#N4%T*"QXR'IQZ'0H9BMWXQ!'C3S1YJ&(R(\87L-"
MY I,W#2QYF? -@CFO\#_V1+\+=>^?VY=M#W6+[H\3% %TX3'7?_"Y:+GT<$Y
M_CHE&8T*R#@D<NH<2[[X"S"+MP<9O673(K#Z12\07+X[9!X YQ,;SUL]%+']
M!:6F::W.C.MEQ=DT.SZ+Z,M6J3/T/:8SX;X'&[DH(ECB)-'[Y ] X^3K'GUD
MB1NR2-LPT7/J_:0#D>8#'U_^":U)KMZ((:86=K/KMR.3:M.+-</Z&M]6CD>%
MP!6#YEDJ=OP?/K/PY/FNJ\R@Z<D<<"XVC$;-?#NIQ3:,4K7V$F*OLTL20A/N
M_GH"U.TV[6:S"?CB@^"10\4/7O8W (7C!9O*,[7]DA4W,"-B&^2/L0E)>/Y#
M3FJ=.A9[F$TR_ ]R#834*"Y;01QAJ0K0 L@]%]^U]!\F.&<@13L4"-9BS"=^
M ,H2H"1J34X:3R7S?**>-2(H_AV+5!'$'T6J?S/D'P^^_^?_U"VK=#&'HQ98
M(OD"\P([N .,)S<W!2+YM':9J7F7O@]O(_>L!TK$ZQK=_D&C#* AS8K $TVI
MR;HX^9P!1=D@5SB)G,$"T%QRX-V0[KE%@3U0;[17D\6?IJ;\>(.ZI ^;<OC0
M[1-HX.D-K>%FA>[VQ3T+S5:MTDVW@'70!!19]%X4R$\>=1*_!9I)#N_1S/<A
MS:P.9Q@:RYQ8HNQMN\T=6 -<GM'OHQ5)?R\D4H ]42^F>&:,'3 9:@MO09L9
M.\ OKX(N4&6  &W6+L288"#..&N, (Z<4G0-@&692(S[V(,O39L6S<HI>R>?
M-BMN^BGM9AC<>YD$^YH-NUP@\"+:E:6GDF9RT-"MX\6N'#2-\!EX_O-$9:J"
MG/L"0_V) G$X;X/,D) "]B\'HE'T/8V$)'; ,_X?OCY _F\/J1UF_#]NKJ:&
M*IB[/1"] 69JA5:)L1UUN$A;);/+Y#,\3>4PF0N3@_65YC 5@4];\)O'OS/X
M+PJF&Q1F#G7N2+7=G >[N:+M9FTWS[*;MT"]C/6E9HM"J,EY,PB;W&\'85=*
MHSUH-@N1_N[R_BO8$@:Y_?J_'^^55D+(S9?KV_O/EU]O;K_DP+@QP;CQV"/U
MFJF/'EVYS?QHN-*V,0WRB>U--UW5X>$E:GA"<J54U]R:6)NFQ)],*FAXHND]
M)5KP$P5=+Q9$;AK4TJ+L;'-L T$K+E!/3!TM("%!0PL'H+7%H9 G7L,S+?)G
MAWM8I97!#_/>Y] 8?H5NDS,;>= I\$B42QT:GBG &R/0<R/0(;M<F@(!*-Y
MW]!G Y'J_:3-&+3Z"9IT'(8P25 O6\SC[(FE6K@_(+$7<50_X4W9Z6HV'W3W
M))K^"X/]R3U/CD3JWW3DFZ(N**LB4]3QRA^JM"/E-1.)!5!C!8Q"6@3I(77@
M"ZDP)Z5MO>"G4,O<RP/6TR8LX_=FFSK %?E#^4N#W/.<H;SXCD>G2.Y\<>NQ
M(/P2KG3<.R3=.XO[TM$KGK% YAU/'1I)X\1/GKK)S?RZR2W0)&,_9(]<1.@&
M:0KJ,=%D/V(0($T@3QSF#' L@WP;FQ!YP G)&^P_<H9"N 3D 9= !H84,#<O
M3B150-.K)S="Q"PD=\/8##G59VV/&L;PZ?R>!CS(X)O[8? -+O]C2+MJ*5*W
M/LN<R4'KK\2A*S)4?!X_A'HG3@$07"0 #@IR&GWD<B^6D)PHDZB^#J.:6+?G
M!0.&JCVZ1=#CWO.H+QW'62@C;@E8:XQ5A)<"!9P.*LYCG0]'E.J\+L. .!+W
MH-,D>@W=M*[4:1,U.8!IH>X> JJCA@T_"^Z.%%R819>B2C[\)8W4Q)X"+SG/
M#1D^;8RMI)!F2CM&#_O8)/L\"?63.G.+P@2=Y,3G#!3I\<@M'-IH7FXV*7QI
MAWDN#BM"+W4,)HR( N>[6BRS/@SLY>;@INGP870V$<D2Z-U ED"7!R]3)RL3
MK.S"#W:A5*YG2X^L%+Z\Y:2U2.CC(XA(Y.6Q![@C]_ ;NS**)37(Y<P3GC>F
M61X+3(0GQOJB<=0)0I1 (4//*@R4/E'N820W:0?3H\N;5:@%U!BYQ@%MENYA
M$)46%T5%._ \":)$7BX@(N["@D!'(C$*GN^=-#AW('EWH8TJGWQY'_I#P!YM
M9XRU!:$BT%Y)M]50YD6T+T^C.["TTJG3 F9))!"1AQ'2>91:-1$8,WB G6S,
MX=UD*04 )?ADI+V\:)&28N($2]HC\H@J/2["%4(2 YKBXT6/#H(X?22AMEDJ
M&:6WV?-X78#V!#L7K$=1=F:<G]Q5D>U.INZ\/W'!$Q?6>?:"69?9DPZMFE&K
ME=^.GVUE!SGR<.ML7D/3,%=IM4J;LM&HU';5F5&I[VY>Y=KNYJ672]GE>BEU
M1>/%O'V;JS%OE,RQF[8[2/^2=+A80==&CNOJWLE F>5N0FYQ,>;=>TRZW"[Y
M%:PDK=E^2VS_-<#K<E_B;HN%O[3"L]] EY+.&"$_90XW]W7M%J=>!'/),H$<
MR^KN5:-D0[/IP)-E6>S47+(XS=[VL J\M8=D">O26^.AQL,MXN$ED) ^HO^9
M.RR!0 I4Z:7H**%1 XP&& TP&F#65KA(T!ZABAB>;N*A1@H]H71NW<4MCSO>
M0'YYZ?M@8CKPU)U'?4&"!)G2 [,EZQ1I<-+@I,%)@U.F_?1Z8="7$9825#Z@
M8SHD_Z%>S)Z!E0S)_$P33/H_%I'W; 1@\LMO\IP.7?42J!+K,LQ.]L4"!R;[
M-BE/+6U,J@"GRSM>'2!5VUG+Q[K%K,'[@NV-IH[[G?HQQHV;I$BRO^TE<VJO
M0>ECEY&+D7/399?V1<Q=TVU;;+AH"LE-T7+[&21-NURH-Y9,ZJL9575&U7AY
M*&)^<1(NF99W1VK2 4*FU3 J2Y93/%!6U7!Y#'"I/#$/A0T/$2O-0J5F:48]
M+$;5>)EK8JJO86K@M.U"I6$7:I4E"XT>+M?NR1>]5O%N[8M>9+VN62L<.J.'
M'ZRZJG"CQ5^NB7DH6M@!2KV&6:A7UM[WFE'58E2-EX<BZ%6T%8[<&UTR#7-7
MYW=JLZJ&RV. 2^6)>2AL>(!8">IEN5;5C'I8C*KQ,M?$5%_#U,!IE@N672Y4
MJFM'B!X*U^K(:(468Z/,GF1)0E=TEB])5:#1@F\U8JYX@2BG(+-;1EW_<M:!
MR$RK43!+^P^LSE&2FAQRNR*4RQ,LYTF34-$8.6YW=[ULU'7LM4;+8T%+K<1J
M)7:/<"N+.UE*,[O68C4NJX3+BA!3?456>]6U5UT1K_H&8KS'2R]4YN6[V9;%
MD5(Y>:W1L-Y.#*=TL0_(67-SR$1KJF*1EHV;4.,LPT(]S@UBK.J@K9;-6BU+
M4/?P1*M=J2@12/[BDFC+1:.S]K_GS6PY;O^[:9:,G5U)59M5-5P> UQJ958K
ML_M69I,"FFHSO%9F-3IO,#OXT7B4E9"%FL+K.9KA#RPU^MLO+G\BCD>%^/4$
M.NT6/2ZB(DOJG,J.>RP<LKW+1<^C@_.VQ_KCT\=2NW_%(N+M038.^4Q11#2,
M+N14B_AZ<=ZB@GG<9U-$&<T&ZP#7WFZTLG1]C4JWZ7#&7.W?&>O!R+R+C![<
MQRD5)5E>H,/);V/5PI#PV7IG-5[?/GOCWN8\7=TWDF5$_*R,R*PJNXX7N_#5
MU"^R"'M6<5=@.=T>Q2+6/V*.)=W'R^]&M,]6*KR+17ZIX\ :86%W^4Y9*1CX
MUP,T0('O!0@G+.Q.%;I?JUAXV2K4S5(V:QB@$W2A?3JX9W.?48KXI0K$:5GQ
MM$34J)8XE@.VRU@D*NEW5 SZ#-@J^U=O[9UN;2NO6]N)PQ WU_RJVDGE^;^S
MS3U>8QY9&C<.?7P,&? M(W$/-^X;&TM6CPK>W\)FO(+MSB-R31U9AAKYMXM[
ME_I^#. R_6[@==@"'J,B(F^LRNA]%SBV)P[;LY 4!L$A7 5=(.B <$'\(,*!
MN:Q-8T_"!O;C!$_,IWXD"K)0> =D+^P@V@UB^&[XQN2%"!Y7L <Q9$>"T2>6
M;L-[W)RX&;%L>2#?1-N *^21/^$&9NTV<R+\2<0 '!.T$J1D5$KXFVF42C S
M(0N;^"GV,+\X!EA=VN?=N/OB,&3!\[CU5]HC)3X#@G& 5A<IG(%%:;02LY!B
MAH(CB\/O7F'?,'M/JT+#J8Z?-Q<;1J-FOIU4)AM&J0K@,)\DIO7*.%^E"N%N
M@LU-N]ELIMPJFG$O\)N"^<!A\!]L3QYQ)E8$C-G%:N1<7J6Q[.J<@^3GSA)4
MOX$9$1OD:CHA\NWUTCM*30#H3QXD_>&_C/[KS&&)(2\T0$)>Y6F4;?9+[%M=
MEWO5(,47^-'(P0XOPPZ'.;"FH&T6#9J@#CA>(&+0&ILYV]IE@WR&F9"'G&UK
M27CR841XI;:TWM'#'1V-V6UYV-L5V-L@J[G?#L*NM-WRMJ4KH*%'G9SM9]"Y
M;T8D5VHSJ[>;EY@GM.1]G."7N,M"[DA&OVY6*@V[6J^ J6PU6L5RRX*_6*M1
MI(Y5LNQZU6R5&R=$$J$?W;/VKR=73=B$K-RV[6*]UK"+9=,I%VF%EHNVZY2K
ME;9EU1QHX],NC) Y[OE][#&SU*J8EV%XZ08],'FN/?IX0I)EAOW6![N;]YD+
M@_<$FS/46KMNVV:]6C3K9:=8KI;L8LMIU(K4-$NU6LULV]1:=ZB@>&QHM%;5
MI66G9A7;91,(:U9-Z+E:+;;J;KD-0ZBQDKM)PGX-NWZTTDA9N68RQLI%L^TT
MBF7':A?K#G.*K&19#=LNEUKEVH;INMA@5=CTJ(D.M_T$]5;XK Z630A@Z2_X
M!\#;F(_K;PEI_7/K0CK$7!XRZ=T\AQ''7?]BPK7X_"#&J'!?=IV&NR=?S/2T
M,=^=45VU%?1QRCB-X7%O?\ZIS29U@/7*Y6YZD:SJS%7J#&\3I#-)W9G2:7E.
MXRBXF/P!:)Q\W:./+/&)%J5WZYQZ/^E 7)R</5_^R9,Z7+T10TPM[&;7;Y=.
MJ0TNUHP#NO%ME?KLNQ2:IXWD__!YS&&?$;DR@Z8[H=Y(_:TV6;_#6SS*G25;
M-7*F\BY0Q%JI\7Y,&4,E@39;-]\1RJ@P:1D (,__9UW'DO"?0C&.#%\-T\+'
MBR#&@SA]9'BT993>9L\[6+^])]BY8#T:TFAX%I@$6<AV)U,WW9ZX ";!(Z'S
M[ 6S[K!E';X=EQD90$JA<3:WT0IMZHU7&[UT;Z]DU.9=JEOMUMY8R,KZU]%K
MKR8(F!O)55=@=TPAV3)@],KVS^_\OLCHC'6@=GG\?#UX:VM\.R^ 4VG.S16%
MCQD9%KJ<O0^07^R.R=Q%JN8W$%<33!-L^Z&QA['-E3!B%KPL8BR93413;YNJ
M@FJDHZ03XDD"=]J\R/JVV32-3M2=3U3,BS*+J/+=+G."4)X7GL<^*#[H]4S4
MG26(?H44:P/-(AF/B\%[=R'W'=ZC'OG89TXLHXMOV_ ,"\E='(J8^C)"[V/?
MZ5#_D9%+)R)XSD%,FQ;-\BE])X/YS(J;?#+(OX9+2P\;J_(I,-8A6)>[KL=4
MI9GB '7TQ#NP[9\?80NJBG7P\C9'2* :Z:95%4MI5>6:^Q3^A+^TJK)_R:&F
MJJ()I@FFO2?*"E7;TMX3K9(LKI)8*GE/LBO0>'FSPUE[AN^D-Z:0F'7RS7@P
MK@R\E24;FW:E5"!4$)I$WTX\GCW4*%6S7AYHV*(^$\7;OL<&4K&!7ZQ2R=(Z
MC.(21A-,$TSK, <IA4&'T6X5K<,LH<,HY%:9TF&FG2I:A]$21A-,$TSK,'L7
M)5N3PF9)NV&T"K-[TF$"KW;@><%/>)1T:<1"4#U$DG@.U86;JVMR@U<5?:FK
M4*\ 'QV#_!'3$+[U!N2>]8(0E B?7 =AEYBEXA]XTU:V_I$\-3,57GH=-Y+)
M_^"E4I%B_X6!"8YW2][' KX1(NT Q_>)^H\Q9J\ZY?]]?__IW3G\\6XRP=5[
MZLD4?@\=QC!3URE__L1#!/]A$CN9( RS?H6L@YT^,9Q:T&6RU2O-J.B0:R";
MD&=9I_SI'?D21$E^PHEV(WUN] 9CJ&CIH__C$[*:8)I@^U/C*O**1K[V>7[D
MJ5DJJ\;"^2&>UN-6)MU5\(3A-Z@;26T-$P2#/O.!1A0T$-"F3D?:%L6LJU+;
M0B5*ZB]9?@"IBJ6WF4"3,]\9+^/+, ]X[_D*I50PLQO(&Z#GW)K(D[>$ZU6C
M6GT]2_ K=Z=?2Y^T#DXOP&EK9Q=3(CWPO\A#W.IRR77,8TX4!C[N3K :.BQD
MF+=Z=GZVG1%&F:P=Z7AT,IS]YSJP:C-722?#R>&V4CX9SGJLOTY*EH7(^W#S
M[R^77[_=?WR8B=-+921</V6F&O@P'N2,3JZT%,70-R1/V89YGR?CH.%GLV&7
M"VG#1RZB$%_5 :7,C4$N.C06,HD\QT(6TK,&W;08$4 &^"'P92[Z%NM0KTU:
M _DB>1"9/"#?'++8AU;RA</L^^ZRHE8GKE$I<4VELD(2FO*.DMV47\^JHYKK
M<?UK8'N2H)LM2F;/+DJ6?P)NU+R6IR!?OGZ\!V%X<_OE\E,!/EZ]8AQK1E>
MT371<N-K/T**'2V;J0:2*K/N1B799SH@5G( ?U3[?Z-$?#\X/RKBJ0F><RBV
MP8QT^>'(,W%&?@\Z/OF3"C$J9J$Q]Q@X7E-,4^PH*+91R-1PJ5E94TQ3;#V*
MS<^,K 31-HJ8=R$3',_Z9,S0G"OW&DL/DL\UQ33%-)9N#DM/7\CX^BX7&'JT
MOFM--(VDBE/L:-E,-9!4F77UN9)J1-3G2BJ ISY7FCQ7>D_#<$#>AP%U8Z%1
M]YAX7E-,4^PH*+99,:X!4S.SIIBFV %3;*. .?* _H<[6&$B.V?Z)^WV+N8E
M1LS#=:9E?<%3DWS%%SQ] 5\Q FRU^KJ^0:WH#>KZ+F]0_W+6"MS!;__XY:P3
M=;W?_A]02P,$%     @  #&B6KQMP0"Z80$ D+04 !$   !I8V9I+3(P,C4P
M,S,Q+GAS9.R]>7?K.)(G^O]\"KQ\<U[?/,_.NV0MG35=/4?>;OJU;;DMN7)J
MZLSI0XN0S$J*5)&4;=6G?X@ 0(+[#E WW4M>2P(""*R!6'[Q;__S;>N2%QJ$
MCN_]^;O//WSZCE!OY=N.M_GS=X^+T]GB_/KZN__Y[__MW_ZOTU-R<75]1^[H
M*YFM(N>%7CCARO7#?4#)A\7M]^1_G3W<D,7JF6XM<N&O]EOJ1>24/$?1[D\?
M/[Z^OOY@KQTO]-U]Q)H+?UCYVX_D]%00/P^H!=^3"RNBY$]?/GWY_>DG]G]?
MEI_^\*=/G_[TXT\__.[WO__Q_V5_?OJD5/-WA\#9/$?DP^I[ K58VYY'79<>
MR)7C6=[*L5RRD*V>D&MO]0.9N2YY@&HA>: A#5ZH_0,G^A;:?PHY$Y$5;&AT
M9VUIN+-6],_?*:PXJS4R "U^^O''S]\1*XH"YVD?T2L_V%[0M;5WHS]_M_?^
ML;=<9^U0FXVM2V%04@64G]ED>.&?["@XC0X[&J;:>WL*W!_\8/.1_?P1?H:6
M?W?ZZ?,IM,UKTI5]&NZ?XGI8)Z2K'S;^RT?Q(U93*I063A5D@Y+JS>N/V)<O
MGSY]_OB_;F_XI,O"KN/]6MQW5O['C_#SDQ72F%_J%'>"_9#N!/O1CM)E!=7?
M?^0_JD6=BCZP91BQE1'W@<VF4S.]8L2\_?9+41>^?/I(WR+JA<Z32T^A& UP
M/8>G7V!;\>IAD/1_;85/6)E]F>)S'YYN+&N7+RA^2 ]*;K3%W'S^Z:>?/N*O
MW_W[?R,$U[6SW?E!1/CROO%7V,&*88)/IW*L3N&KT\]?V(+[@1'[CGB%&Z-D
MH#_VZX1<-)TZ$:^XKIV0RPM:_WU9NX7KL5&+8=GVDYOV%#Y4MENXRQLWGN&W
M>BTWX+]F,[0;E-P^^4C=*(1/E<.2WU[=YD*>0O!'\WF(SZYN<U!PR./GL-&B
M+[HB.HZY>N3P<1??-!O[U(DUP%YHLP]Z[H$?/ZXL=[5WL=CIYQ^*SYLPL_!S
MM90.6)[G1_@#?"6_W.T<;^WS;]AW<%;]*?!=NF032."/QX?KRJOI8V2]^9Z_
M/7R$TA\?V'_^2XI?\M^99U]ZD1,=KEE;P18[\1UQV*7>O+CLHNRD39DTYR [
MGS_!_S!93Q'[XC\9,<*I$87<OWW,$LF0WX?4GGO_CG_O B:C>7SL;M@7HK(H
M4E%1F8Q6]9)NE5837\JI&G@"%XQ9E!7/YW>+^<WUQ6QY>7$VNYG=G5\N?KZ\
M7"X>[V:/%]?L6V4>V]2JF<[/,)TQ/?:W2I((FH03)1]BLM^_S^M0\WIO!:S<
M,XT<QFVW24Z3J)GQ+QUGG'Q(-?.^ DI70/)@OJ!/$3R:[+U+YVOX=$$CRW'#
M'_E$-RI9,Y\_XH&<O-'9!U8;YEB0(_Z:?_5!D/R>_/@^>?63=T/96R)<[+=;
M*SC,UU?[B'UYRSJVW6_QMWOK %LH?/1L&MSYW@I>0*YK,6%XOD-)V-NP6Y%K
M)P2YLOD?M[&:)?2[W!+B]6$1\1[!&N)](J)3O B1W2+8+\(Z=GJ>](S$72,6
M$P]$YR3U]_78ZSI9+-E_;R_OEHOYU?G\]O[A\N?+N\7U7RZO[]C'R\:"0V,Z
M-:OH]Y472](*F5^15#N$-_0N7C19#\D4^J!C=6SVT8Z_#.?K1>2O?GWV7;8=
MP\M_[)D\_NA9>]N)0/4(*Z$7A9HU\(<6:V"QG)__Q\_SFXO+A\6_D,O_?+Q>
M_O5]#0QX)LP6/U_=S']I_H2HJ5TS]W]LL_\9=8+DWV>\G51R9H4.VZ/W"O>?
ML\)$89F*V?OII]__[O>_S\H 2 4N?I7.^Q15*V3B 7R@810X*W9FGEOALZJ$
M*2M2,T%_R$U04I\ @?>I:3@U[-Z+ FL5/= 5=5Y 3@WO:%0X125%:Z;JC[FI
MDG2(0NB$,%+OD]9PTK[ZOOWJN&[A-,4_UDS,O^8F1M9\GX>&\\#?;H6S('ZJ
MF8.?<G/ Z[W/0,,9F*U6P9[:EV\[ZK%Q8X_^>?1,@_-] .JY&\=Z<ES6TY))
M:EZ[>AY__RDWCX(TD;3QS8_4B2!/%/KO\]U,?UBH*JQ4Z<#L?,[-#E1['_/&
MTML+]?;LGY6_X5TJD>!RQ6KFY4N!%(<TB$+D?9J:;(V R5'@GW;M,3$8;9!P
MFOU,[0VH0L%U#<^9W.NH1<V:R?RQ8)-)VD0AC@>A($\2^N_3W' W7GNL+%U:
M;R5WFOI[S93]+C=EO#+!VN\STEP&V6^!!RK$!W_+AN,97(%>Z(T?ELH>-;5J
M9B^OI%!(2E%#)4J ZONL-IS5O.*W<!H+BM7,6UYWH=+X%\*IO,]3_;6'XP9.
MCC:L<[;(%1^?VE(ULY176R"=4R1$5$KO,U4_4[,56]0A=H,)%Q?L, HC!RRH
MV<DJ+U@S7WEMAD(*90Z%V/N4-3P$+ZW 8W):>$^#Q;,EIZNN4,U4Y94>D@)A
M) C2>)^AIM<4C-8#W>V#U3-X1@3^)K"VQ5=5<='JV?I#7K6!=$A"B A*[W/6
M<,ZN+"?XB^7NB[=3\FO-S.35&E"58-WWN6AL_]ANG4@^>\$TP0XBZJW*5(95
MY6OF*Z_N4(CA%94B]SZ%#21 NH'1RWEX5Y:HF::\(D/0>'?E[G(_[9]"^H\]
M8__R!=9Y\<V4+50S17G%14*!<!+O$U2_>^;!QO*<?V+W+?>!6JZS\6"E9S=1
M><&:B<KK*-*DB$+K?<8Z.;S<^ZZ3W%;-BM;,6EY#4>C^0CY(@N_.2MT\89;H
M^]# 'T84K)FWO,XBXQ5#/G!"[_/5SSVF8MXJ*]3,7UZ'4>HJ\SZ377UF*N8N
M4Z1FMO)J#%G_?7*Z.=)43$VJ0/7$_#&OL9 Q%N_3,I)W3<7,M:51,[EYI4<[
M3YOW1=#2Y4:=VL)?:B8LK_7@\7?OT]#7"Z=2>BPI7#-9>=U'@4?.^]RUV$**
M.T;Q3LH7J)FC:J^-]\GI;^BOV%BEA6LF+:\(*3+ZOT]>;^M_\2:K+%LS=27^
M&@6> ._3-X1+0/$,UA6OF<2\:J3"/>!]'OOZ"52<H"5%:^8OKQK)^PR\3UMG
M0W3%?&7+U$Q47BN2&*7?)ZB7:;/D:BLK5SU1_UK@UY$W<[[/6#_CS,RV'6[I
M4@95('TT,-A45J^9W[RBI-B(PV["N)7TU$M$DO>Y[V3<@1>SMW)<!WF:K^$[
M<!EA_X"T_V*YPHDD8^KQEWYDN;Q\7>'44II,;VI69E'83]I,=4K2W85%BS^@
MDPS\H73C!+_-DHA\$CVS-S'T7E8_:5CW?>4/8R:+$9R*?ZY:O+T(UJR_O)*K
MW,R6 GVJL,:]KYAI8(E]T8DE]J5NI>55=9JQQ+Z\K\?Z]5ASUF1OSC/'=:E=
M4&GAN_;2O]VOK[V5NX=\ D4_KM!ME)& ^^8J\+>Y)6N\/S6K.J_+K#@_E76>
MO]-YUPNK0_8"&V[QV\<K$C-05N(<$7=C-LB:\4'.]V'D;VG 9%Z/G-%GRUU#
MHZSX5RRNTKKSH_+J[Z?[\>RF'$* \?[4[*:\>KFA-'*\VRF-G?N^O4;<7OAL
MXQ/!/H>P(N.)J%CL]P%]<?Q]Z![BE;WAJR:'(&"^0S4;K 4 5=T&P]>ATOO<
MQJC>@PD3ZF;[JNQ'68+_KM;E.VSK1)A:I+ SDMQ,/I*3'7BVCW!/<@HT:?I]
M[QW1WNLK*8[0H9J]U\:C];>W]][OP:'W8AM]>P<*-:L];_NJ6NWO:O>!/;N3
ME 'GSY:WH>&U=VX%P0$4.%M_[T7SM2Q:I7KL0:YZ??R4-[G%'N/I# 6B0>)X
M1#9)>)OP:^)F_KY4.OF9UY\2[:O53'W>&A=K M_/@6FKE'5JE.N64=YTIE>A
M_+X6AXZ<2&Z9QE6J3BH=[=:LT;QYK66$1OHN;!O>\;Y4!TC)U#@C4]UBR%O
M:A,RO4]<LXEK\]:I+5\SC7F3CYC&=^%EZ%W(+V_YV7Z@.W%Q\WUW'SC>RME9
M;J.=VI98S3+(VRH*=K.0/N)&2=)JO-GCAM]7R@"!8.PW:[,)Z$;H^40)/K(-
MX\.J:=2LBR+@@7S8&!91&N%Z/EY.+(/W5=#@O,A/GJ*J$ JG61A2]-#+R6_9
M Z,GM9J5D5< %Z^,E/9#*LUXLRCP%8AX[VNE^XE1(0LT/"^J*-2LB;R:M'A-
M5,L6[],_RO1_[C__-1;9/WS*ZT&[+ #R^7T)C+,$+NC:VKO%2:"Z4=*U(,C?
M1(O_YWUI#)@VHMU3<PBB-0NF**-+BV03[P_70=:/ EUPN5Z#*?PE^>[!BFC:
MBE^R8#I2J5DA>4UY"B7AE,1M*3\0:"[K>_"^)+HMB3:'1M-J-9.>5SUG)OU]
MUP^$NY""P  ,!-_C:J7:M"8E*V @JC4+I  XM@B& Y&91>/"!E&;6.5]$6E<
M1"G/J7%65&$3-<NK(<I+M^7U[BTVY')K<SNUK%VS2)KE_WF_K$::>,4[5B:P
MF*\1/Z3YU=2 1LTB*$DOE%\$*9_8..,&^\2;>U\-_2&C6A\%[2C4K(2\AKP4
M7NK]2!AO$2C^,*]68(=? \MC]W&K95!#HV8AY-7B%0LAMI?,F?B C1'1VOMB
M& 2%K,VAT(U(]7+X7)12NARQ[/UH&'4UQ!?^?4!=9^MX[,-]G$?+6=&9Z_JK
M3FND ^F:E5,$D5RU<A010^D#N4_2>[%>D*0;[VMJV#5UR;[8PN/O,:3KO7L#
M1>"!RNH%U+YF0^9MG">7<G-XY_75K9F:M997LS9>:W%_".\0P1[Q]S#O$TDZ
M)7T!WI=>BZ67A5I,Y)/L+W$4W(7C[D$ISK7C[%$#(@@7,$H6WCB-U"R[O**W
M  XR[5524"")_9,]$E8!?%]!IZ1L];[L^B*"MHZY:46@9KGDU;Z%R^5=A!H:
M5U3Q1,6($@=F+[;.WE(+2MNS**XP]Q[H:A\$;&X0KK!JA0S?2LTRRJMW%6S3
MC!.L[$C*&BV[0JQ(K<K66-P?@=+XON8&3.39^NSI2JMF_11!O50D 'T_D8;1
M]^0 <ELI_-K5KED!!6K? M#=]WD?9]Z3>T+\)KS,%L[&<];.RO(B\8,2#">^
MN0_\M5,6'C5F4S4KJD!]7+BBU,M)EA!].B%*K^(?9;\X1*K\EO?M?2'VSH/;
M^DYJ1:!FT12HFK/Y<]\/H4$.H=+,N6WNH&Y$JM? E[Q^N3PU+_E0O!9^,UX(
M\!^PP^#$N-ZON<&U@A74?*!K(OY4E\S;4^#^X >;CXX7?;2=[4=1YJ/ENM^1
M-Z3P'-!U:HW%E;Y\^O1[)&%'I_#W#V^A_7\K-2/6W3]_%SK;G4N_^SA0S]C?
MX'WB>Z>V] ;OU,]2.F/WVM]:CM>_TRDRX_09FSC=TNT3#;IVN(C&*+U]9D2#
MU?Z)GL:#U+'/%93Z]!P:IN'6^H'N W\'_V#+']F)LXZY>'5L&IQZ5A#XKTT&
MW0V"N"X0/Q4?&#>?__7T\^?3+Y^1IV*ZG=D)U9E@=\V/<2="T*/#>7;J1'2;
M9R#,3P&KK1R?IY]_X%TNIE3=9=G?SF*1OT*-B/R7R;Z7[.$;'92[)<T3H^J<
M2I+8[]:$QF5IP6XS"ETXG]\MYC?7%[/EY<79[&9V=WZY^/GR<KEXO)L]7ERS
M;QMQUH'>9!A,>2H.S6TA<0.L+Y;LO[>7=\O%_.I\?GO_</GSY=WB^B^7UW?L
MX^4 L]VVA=$&(>F=[X6^Z]A@M8N_#(4!)^4A]^A9>R8Q4KN._2%HFY[]V>+G
MJYOY+T/L\&9T1V.X,AO1YSJVFM4>^6HIR7_3[#JIJ:RKZ\70E"U9J":BBQ4)
M5MBR\]EJNKK+ <]:=C9=25=7&^-VM>2F-5T-IQ& QOS8_/A)%==WWF0CHUN?
M.64$M(QPP[#=%K= >YJZYDJ)-VPY204U-6[XZI"E]AN]&3U=#.9%O98<E1/0
ML(.*?<*;[Y;J^AH8*'4A;,Y#+0E=2RGK/=1R(955U[83H-$DWN<^\#>!M6V[
M&RJ)Z&(E=KIIV?M</7W"=ZGS1VL)O):2CG,I9YQN<2:5UM6V$S)FS[9[H*2Z
MAG$OM=HU'_Y:$F84 ?>^ZS39#JV(F%$+R)S:/90#:1)F502=V&E"2K>ZH!,C
MQ97UJ@XZ=;RHZN34")TXZTA=DTJA&4M5=<PI%SJ>7-5D-(R[\H!N._RE5<T]
M4#O-0AT98X_5MA/2A(K)AVM;?AH2,O6([;38JHEH?P5VXJ&DMI''4^L]4D/!
MC A?[7[80ZQO0MB,J%^4#1&>Y>P?.(1?+%<\U#/BO;_T(\L5V1-K"C<<P:GU
MT^RC)8Y0+OZYVY@.T92&K6D\UWOCO3Z5GG[[D]+"T#F5GDYO4L9(?#W2K(S7
MU=_ M(QW@HW756/3,HS4UYVV;BUBEXRPG32.W1O2JYWLLP Z$]2PW,?-_]ET
M8^CHQ>34PGT26(ZC2N[?(TWJYY+4BVVTT94D-+$QS*W2E)+VN6F=D*_;_'5L
MQIP!XJ(ZZUQ/NT0CZAK60M]D:TT7PS#MF%L-E1G%>JZ%!K0GR7CMDW$0XE-R
M#A[J*ABP.;TFS59Y<#K8/3O0USL PZR E@1U&4P'R'K2RK0Z6'O3'Z#BC!Z:
M1JNJ<2-#-\PNZD;7",--LC)T9[LY=6.N%P/.>"?:QABO ][OQWHSZB9]5(:9
M^%[D3;+?!5F]]Z!T;W020]41,'RX8>O5 0U#.!+P==,!'+5Y4\YG YH.NI#6
M[J@V''1Q-U>WH=N?0/C4@$NH9RM&/ <'$O$ZT37"\(!XJ]U'9_!.F(I\&W#W
M="%M,F)NF)W3B[Q)DV!+Y(MJ&D=NC6\Q%EJZ<>3#V<)]2DLWN@^G"C;Y$Q]"
M#ZR'U+ZQGF@#F%7 >%2K 5+E3Z>?OYQ^_@..1!&U,;J+;MS#]CE/<IKVLHLB
MJ-F!S687;6!HRP9B;85/. %A$'&^V1^GE-K;CY=O$2B6V:*_])BL'@BPXC ;
MNI["]TS18[S^[B-UHQ") O40^/\=\@YM-#3]N3#A-^PO41HHE:[!'SD;4#"F
M[D10(2:3;I4"GS:U%2CDN&%_E2J*NA2_ &8US_\^/-U8UDX9 _%-,@+BBP0_
MC_6-7K,_XP'&'O_YNXJ"'TUU6K'<QP\W1?/R%**AOX21AI6-,0?B1O)&O?8B
M&M P @/EQ1Z>I>R][_AV"7,-*W=E+G^*P#?_M;! 3E(\60OPS41'Z\M/9.!G
M;T[95B@H./" 9I5_=Y2]JX222[K WJ9@JM7A;5';V&#?NY9W9VWI10H:/#/0
MF4+F.BMDLBL_4&U?:7"L;-\KZPS"2DA7/VS\EX\V=3@7[(^D\^S#?W$89W:1
MLU,@O/=#)L#\;V=W[MLTT^N:PN9.>M_;+&FPA2UW:S%9&<\(U:TO=NF[]IA$
MP]K>_)5:P97SDF5Q$)+&!B(6SV G\(,<93+V!I@_L2=X"E8HPW&SNL98XVXJ
ML7QQ9KG0L\4SI8!$GDBAR24=GAW8AYT?6N[7P-_O0L4"$*Y0C;FGMG@N^5Y8
M<99K:MS8X,8B3I';H]1_*TIO5H ].H.4#AQ#K4O&;SCZ6H]$F/9@Y_,IPMD_
MAP"3X%!Y-E;7,C?'BBY COY!WC\7^]*IJZMFC*&\?Q'?IN!EQ(29^7IIO=W[
M 3Y2HRAPGO81+*&ESUV0:AX 0U$W>&!RL?[><FP%C#IWLJ5+#2WSQ_I1'$]%
M1?! 7:XN*=57X89?LK?O&6OQU\(7PG#4C4W3W1Y$;,:![*BPAY1=1>7EC;'0
MQ%&6?7G.SGBGE*^61(PQ>[8/'8^)OHKGQ@4-5X&SX\$3TC.#WP4ES+8D,O"F
MO/1HL#E<>B].X'O"A!=8\%)=H1L3.**$[#,-8/A?:' H?T5VIC7X6W@5P+Z^
MH/S?:^_16^_=-88.%XJRA3J'+F3,7H"H_ ^?^:X19M6J*ZVPO,$'R\JUPA"-
MPS":$/D]\U>."!ODBBAYW1;=LZ6/F;YTS<OB9X?XSY\==M@'J^?##7NDN14/
ME8:5S2W9E7-&V2:BV0D*.TQR1V+&F$_$%6$_^2>UKVW6)=9Q:HNGD3CYTT\D
M]MM^R\29*HEHK%;,;X1K;[>/0ER]7PIOHB8US,TZN-V=Y?S$@P# "U";<$B*
MB(<5>B/6VEKZ$QY:VB_W\RE^;#6M952S& DUX)*U4ZF(+BD\M/2VF)TK<F.%
M:%98T+C@S!;K$WN(09<@#QED<>3"/5NWX9JR^SD!U2D1FQN1F+82EGVY AR_
M39FPUI;*P*NL!+CJ;!_=^=%?:93"IHJQ>HJ684=*YLYKZ;JX ^V.M^&J!79<
M<G29LL.XIM; TR/0-GC4IF=?>^$^@*5Q']"ML]^&0LXMFH^F52=AS2GFHZJD
MN6ZS@XDFWE="RU0CK-54,L9,A<]W8N.H8ZXED4G(Y5)SP36&0HUX[H=1I7VC
M#07C"F'0JRU>K5VE*%U2V-P<09#.-7N@4%OU44%I/\%;34)Y\ 5XY0=KBN%4
MY?Y*/<D:W*'\6OW%B9[EK1EC!#LK6'WE:H*&E<VY4@3^BE(;@0#/+.]7..#+
M/"B*B@[;\;RC8-QA]@%Z8+,=/P\6-'B!@,;\N)<6,^C&Y%H'MN@#ZQ5NT!O?
M*GY)U)<W:=!T(@H!D;DPR+/#K?5W/S@'K5"5MJP%!8-NC![@$J'=X\I:H?VU
M@J?2X@:7VBZ@*XF7LG.IB'9EDC$3E?]9Y9/2J*HQQI8!>BX<\'JH$X9*"IN]
M4!.?L]3UQ^$:JJ[,ZHH3D.12^8EJI;9T:>,>A$M?*&C%G<$.*'XJU7@1EM<S
MM_F=%\>F'N@?86POF#BY],\HN!M<6(=;)H< X#YXSI4= <T)F)/%X):8K]-;
MO&+AE9<W*4Z")HGKT1Z<\->SPQE[JCUOK>#7:D&RNIKQUX[0)=_YGB]?V35/
MGJ(:D](J7+*!C2@H N&YZ=A[R\4'R]>]A9 KI3ZMG6B9O:%2V$)W?D2;JQ^:
MUS>M*D;-9\&3K([#QM4GM7R+UYGB_])B^=;3FDB@2!JBO%'(2*:*\2L\5*[@
M"["XLS=&NSN\"06M#K[G>'>YUYY-W_Z#9KVURLN9](+/^"?%^^'<VCF1Y=:X
MM;8@,"5+8=Z5P8J?ZM*900KQA4X-D#6A>F3&;G42RC0%86J^EAR7/O6:U#1J
MH@#_>G:_\6<G5^-6V"**2@]LE\O<41FGX]A_7D04'>I=G/L1-.^:R*UR?,M4
M*ABK:DSHN+T/Z Z>GI2[&8BW@LQV4/E*[TALL@$C-1%TC:M/3#@5_A;X"53=
MK:317.5Q[/ZX/C@JB&@8K8S2;ZK"[%]7<RKQ??5B3&%I$Q&SV(MYP"[+%X<M
M^%(ALJ3X!)2EZ825^028;5Q.FU*:A'M)F\C>)6M_Z&AA3G/T4 BQ]Q?[IY50
M$_B!O&4NF!"[BM _H5E 1%-BD[VW[M@:7+Y2]X7BP[/".-B.C.&C$P(3I2;(
M\?;@@Q9'%W,W>36WP1N;.3^P$8X7?8%!](+YY(M3ZD(KC]]Q6AQX-_P%7BVL
M9^N,.\>CYZ!;DN)7R0%2$0BVW*NV%[V1G#15I1^7&I6G*'N#5G@#MB4Q'0-%
MK3MV50USL9(\8T*! >BFQMV_24V#ERHH3A0'ORKS5TGA2;E2Q2=^&O'LGQ4*
MAE9$S#$K^I;;'96O\[I:DU).\\BGH(=RNHR"04-1(DHR 0P, F'B4+\ H RG
MQI>F%8G)"F^S-1,3>FH>TC2FX3XD])-5CC?EY8<.X^J>TWS3+JEYDN39.Z//
MEKN>KX$(^DTG"8\KPD0:8$0<+3.:=!GG$)5?HF[)_VY.6Y'&T:Z3EDJ+CZ.0
M4Z!'EG3U[/FNOSD N+F_CM@#@!U#*P"1\3;X-JZ/SNE&S^"I_49MS.8B]U-U
MG&Y9<7-B>29-!CC#K\H$\<*RAK78ZITW1\^'I8_PN&7R:FVU"3'4SV.D':5)
M62-:S&1EQ8$/O<J(@:(2YNR0<E1J M'KRT_S=5H=']FHZL!K(PXCHB%$)@N'
M_3N+.PXD"L*R"[PCD6-S5BET%Q%3HOR 6O5A'59:M6S0>ZYA7N+F_J"]2$[$
MC?#1VX?4/O.#P'_E+EO6"DR+S;T*JRD88U-D :1V,:I)-;!5P\J3,#DVL"":
M5#-%%CM3;"GB*ME\+^C:80NE5+E46]$XB'A%&$.JR&20)VIDE=+BH^#V<W6)
MHLDH5+:4%#5WK.#5)VZWFO$L+FL\&&R^CC74BA-C32182:5)/6Z*5+-I+'5_
M7R;[=*=GT-V&>E;@^'#65&I'"@J:0Z>E$7CPH+.2S<2&PV,(RJG$'S46FDJ8
M:4' 1- ^3T"(\?AAH3&YNJRY<RVY7YL 59>=>"VI3$0(KM/]EI7^)MZ(;#&R
MO<,..78Z0/(!< O8;<MU 'K:-@DNX(=.U% A4E;:9&Q&\8B6([975CF"BZ)&
M"NM R#Q"J4AA@5)'G,2B&51I555CC DGMXH7DUIB"B% ]U8P#]"UFH,W2>-,
M?3A0:4V#@<_"K7V^AJUPY?JO=;NFLLH4I!2$YG1%#NV_[T.$A:O<(0TKFV..
MW9RVX^Y!H2B]9VA8FZVLMMK0^O@![_]?_.#7)%"T4'$_7FOF3AG$4DJTQZ$T
MJ]1[H#:H:7)SH@\8@")@1B:?;;)$:5,G9#>N;F[>^,*!E0</FWW$#G;A/E$N
M7=54&MJ!^_:O"Q_. K!EW9R7VU.+"TY"H=TJ.UZ%1J</28,*<P7NLRB(IJ*@
MP9W/3]T*^+OZW=^"A'E!2OC.LPWM>VCU*Q=LJ^L,[3VFX-C-U]D1E(-\[15<
MJQ4A*@-0'=J$P 6=@XP3.V=/.->Q/'2AW&YIL'*LBE2U;:J;B  5_\"*ST+7
M5Y>=0.QGH3<;IFUBUTWKE"/MJ)ES]]ON7/] 9?2S(GM6ZX_JZQU?FA%^SBDN
M$;C%EL^6QYW(PJ_@)!=>>Y4IQ;4U;VR A9O(!0V=#3\L*V7_TN)3\:"&-TC5
M/5A2>@)'5O$3FB<O%R[U*+J+"S![)C4_S09K:%+@P;?6F[/=;W,N0&6">1L2
MT_(7^\KV&QBPS@YB-^*Y#8?*L[.K6/L=B6D2/6:L.S9TZ<JULEB6^=_-0@"5
M6!2K<^>6I?_I0]&\!W+:1R%!.JKS1"ZM-W@P>1B)"[PBA*.RZ$3LP[4ZV-+B
MYI[D<0IY #:^]H0:JM[AIT'%<2*>Q%6 .AH/8 ,]6P+*1@V#G!J3,*C>B7W8
M:@PP125-&F.3D['<SJJ4,>P8=L,A9N(HG$KT@(H:0Q^) 44I8'$(09'%DQB%
M>Y?;H1NDX&M'8&K)=7AT,?XHWF*7;Z!K"4M!$#H0,F?CM@*T1$&&H\K;HJ#@
MI&+C6@'6U50UC8LBM:V5$U)<5JO[X .H-0KW??97XQ"<,8A]FQ3A)96FA)50
MZ3Q07MX@4DEH;38!W0AM@<"$J;KJ*JN8]%E;.U&%:*$4,-A) :K:%""XHL*(
M1A]^/V*D(SJYH#APY0?4V7A<^ET=8""95+EAAUP8L7<NS#[?EG7&GY[4!^;[
MUF)"4* (RO<BA=",+7'4$4.<*D!F0!ZW<J&J$YW!'\O;G>4=YJ\>6 '6-,FB
MZKL.0%I5/9Z;51W<!(?10FI&K4PBK2K[6\.Z0^^4_6;/%N6S$T2'*R=@?[[Z
MRV=_'UJ>O7QE/3H@@&:%);05 9.A/OSER 85GL:66_?<K*IAUADB!G^MMJ05
MEYV <8$+R&G,GWMVXEQ47]4M"$S8P4\F,QC;M2]NQZ1\ -#KA9#KU2NW2<V!
MI[@FS\]-%91"X[H&PUY?*%Z J/,K4_YG2PU]U>QVKD/M2X\&F\/7P-_OF!!4
M<;%4%!^X9_.MYSSMP]*PP9)")IWRLP::FC"TJAI3B"W@CX'Y/@HC)C>4)Y"K
MK&(24;',12])<5MK,FE+Q2 8-L>13BDNROU]2XN/#LHNLWXH&-GL,GGT@N12
ME;^<48^R%W5#@/8NA*?LB_H+>ZX^,T%Q!A? ACZ&=+UWX>74W3>UG.1$%!8M
MPYD:5IY8K$QC1YJS0S&!"A>.,5L<^&A05?(A:.&%=%VFT&]8:?0#+.VA(*3^
ME+3?[+QJ0$>K4R]>"19F3[ZP(JOX-5!;?/ G0!((H;R=A41_M??L$NF_OIJY
MJWK+'E(!CUK$N8=DK67W=&%98UV7SF!S3T#>B,=Q2>]+BT_ 7Z[2 )$II6D?
M7O@K],SYS[T5L,WE'CC&4<$6+"MI;F$(S4;9F[R\G,$XN? YDZ8IE\8I_852
MLNPIU(NF.: .R^6)6RB-;J %T'27"QFEQ:<%G__(7J A1FM"HK<5!*%4X06V
MHZ'?[%XP(>G?!KYZ'Q<H2V.,Z\IROP(>NE<:OMZHBD&M1L@N4#A\5#2C1?F]
M6U'!,*A;C*"1P'66O05*RT_2&: 6Q[11W>,+1+K;P]Z8K[GN;/9B.2ZP=.4'
M& )4IA<>JSE=237PJN3Y(, S#B_&K1-%< :'K#<EF(H],E\,T^($1-<Z(:NH
MY,#3*E?1?+UF!V/BT7P.MZ?]F'.T:ECI^'9ORSB^C 8.?X3,2_$I/?1V'[Q_
M!C7<J=RW#>34JAJ&;_'**WOHS:KFLR\YY'A^'GX>YGS%.A(9VO>('=\+&D70
MYN*QRM.HL.#1@88L7_TRE^8>%">5SR'.=^" XTA=5LMFU2<2C%6M7LJ7/([E
M"<E_Q8)JD$IX$-(&HXE>!=@3!'0$OL?^7'' 0G19//#_UCU;6I,Q@>1QSOZ<
M!TO_-;O]JDI. 5^O+#:V*<1>37W#<2$UWI"90N;QAJ1^7SC.-L(;*JPS/1U+
M(Q#]JGH3\/%,SN#Y6CV;6X+=-"0SN"&6B0 >?[N#$%"9D+Q<..Q"9EIJ;07F
MOUI,;%K;-+2,"BC1!%NFH/QT0#+/#BK89<4!V*2FR5BGU&,OR?DJ5*]EZ5 Z
M$)C P9A-*:.D(3T[B!^;><$WIV1.M%BOZ2J*)9VE]081OFEEZ9WOV122/X#O
MF/ .+%9!@:&D3#P9OJ'A ]U5=)^J>/9\.9-&%"%<S-?J" ET-G04SRD#PP;F
ME5Y4Q[(;E&2J/MM' R7('J2!H=7KOD<%YMZ%$[#6YP%J<RL$F[HJ4WZM@8]0
MG5&C-1F#@1WI.^#<M[?7G@V)J?:6NW0BO [O?1Z7.@\PCF(.#*'BE(([.2:P
M#?%0]/9;D?>S-$1DK/8&]RBXHC:CW="7H*RP^;P7R5E9%[!86642XIT$-$^.
M/^GV^\^J1=>*A/&H"! \9(((>$50Z9FX],] (H$H#F?M2/@6T$5^_L(5D/4Q
M%#V)&T_/I"#RL%F] GE5$5OKY(:V5 8^4YH(F8_L%1Q HDY$R^-]+#IR.M,:
M/LJ^%AMZ' #H+LOHE@8;)A I\Q\B\G&X$\.C)!:NE4([$IL:A!0>^0,@2%70
MF1AT69WX5E?+(%1L%LRZYDJOJ#"A? RUN'VE%30[NX.RJ\+#'7\VO-9;YEM%
M;(W*;=")H$EI\84=Q@BAPY]>J [A"#KEXF%%'4U+3.9/^/SE"5]!!<LL5\1H
M. )H2=,Q ;/HW J" UL(5=YAS>I.*KR@4M%?4<$XKIR (59N@4I;<VTU@]AR
MEDVW5O K2%CX 10!U=Q4US%X3+-C%&ZQ1I;,LM+F[>?S-<IZ$./'A.!&/@#-
MZFJ^TZ^8C&ZY7(2]8M]E;XGJLI-PA:H%*B\I?'P>S(5^P%^#<IS#,5J:@!%0
MAB8V=X3(UQC!Y34V/Z2]:Y>^A/\+"CQQR]QBNQ&;DH8JUM& 5_I\K?Q2AJ#4
MDLC48J-JSO^Z6A.";.;;?^E+V(;J-U)US2EE$ZH49<O+&[SF+(_G+T4)3D*Y
M*3L^T;'5RE*=:!W9>[[<$;\KN<%!3B5('+MW-^A'L<)C_8Q">HQ"\W=-%>-G
M_A!XBU(_AR5Q8=;<$2,U.@'I)H4,?G9 W++FDDYU;9-/6"]<@[U QFBC*Z>
M(H6H@CCL#0[>L/BGRO-[T"8&!\=I 8@S,1"<I;.%V^*67>8!&ZNP,OM2PTH&
MU>\H=,6))=C+!BV?['B=/[D.E\WB(];9XA):L&_#M;5*$,O+)-C!R$_!!T@:
MQ^]HE#*:\XQE3>,V&E$QF8@(>H5*<)O:9X?'$,#XKKT7[FT^@\<'OS.JI?L.
MA*: ''H!OD>4G2\25^X"O"""4NMGHZJF=W<9E# 'UX/) -M&"-E^RQ!?NU":
MPIZMSD!8[A?=BH3AP'(VULV?/955#$:@\J2[3# -1:Q$(H-4GJQ-:DY(D_!
M/?IJN: .*+LS:RI-0")OXFW4-@UY>Y(&O63Q1?R5S4J .1!G-A-<'+C%@(/J
M?$T-*YMU"WJ@.Z%5S?OT5+D!5=8S'.DD8R"J8_6+BAH\%4O3MY2>AN4U)G!P
M5  \QXJ)D G"40*XJ>@UFI\F0[5CUF0ODJ[FO;:J#/;EE4Q**1D 8>EV+9+B
ME(LJ-?4FX88NM:727RA.)Y,\<1IXHC>A,@5/0U FM;7T-ZZNV=C/;Z=+S[[(
MFW3*RTWM;=Y\O;4@,+$83WAS.MX>U$,[$>)3QF0+ F:%K-06 $-4K;],9:4I
M' Z)-TGS$Z&@SL#*YN6K__/>L]FE?^LPX=OW4#N3R*IL/VP":UL>L=".P+'F
M;*B$&!Z&MKFAL?^^#R-NZ_!GMHT>$Y8+]L)K[]S:.9'E8D>?LLY!#Y1[6%"!
MI,OO F%B@P)5CZ+1FS6.FMY<\515PZ2FL)6(/4'INBB&-LGG>XO63_JS_PIW
MO1*_4JJ>Z$;-O I4:$Y$@J0Z[6>FM$'7*6$T4 P)(*.5^DR5%-<D.8.K#%L5
MB\/VR<_FG,S_/B5/C#I[56458XS\Q0K0>0-$V I$GERQ"4FVC:59TVKZ>F>H
MV1K26"?^4%=,&.KI7U5(TOQA2I6(^+JC-%5V<.@T=LFBC[UT&Q"H9UP>J@)+
M:U)Q$OHC5/<LGME]*YWR&ZB+"BJ95586ONBJ%)7%%2: 49^8#Q^<\->*4[>R
MBKFE)?&-?*'JEC<;#:M"(VJKF8T0SL ;/BP>*ZW"U75,/C>R<"-6E0M"46'C
M3[Z:]YU!U:$ D1)/YN)@'W;6@ <2M3G$U-)G3_ L6)L,,9%NM&6:QM':FU@H
M;_-'?O/Z PL*9Z[E1=SF&88^6$!+XD'K2FO-CE6L1RQ)EU51> *FW4:;8>:Z
M(B::Y[CARYV+9 CET,)A9.#V!EZ/JN5]OLX8H8N69'6%"4RPO(XP9 :#9]CV
MB4U'R275? K;4]2?7:1HJII4,RC'9G*)-]*+U=6:-HYT!6I)\_IF(0#JU%.9
M0N:"'^CJV?-=?W/ PS;K75,= ]&HKC'6'D.X5L+(V8(X4,)#II#)G#0KZD7<
MD@V/3G:IP1?6AI;YE596,:\ %SX]W%(H[89U:O#B2A.X+0M"M\.S@_*I&2AW
M0S)ZA5:)V[%@J\=BHE29O%I8;E)9G/#@44(A#XV\EKM0&CQ^KC(<HVAQ-:^G
M&>/J\HV]9[P-XO$4F)0*BPTM"";.=YE7%@<.+Q8#:RL9MW\I!X70ZE6'_-?7
M,Z=DEJ84(9F67=#Y<D:5*3*\CW6H4C8J+FO0I\L#,'WTAJ_L=T'!":CP19Z?
MPT6%)%=6>E(8W757476=J4"-5*Z@XK):)9I;Z\W9[HL= /._3P,J%7- 8WQB
MXK7;7$_;B=04/$P+_<<[NIU/X#+CX7V0N'B^9D_+(NU@LSH&M_INYZ*8;[GR
M$E/0T^M\FAO6-JQ_<BQ764P%AVZE]JF^MCF36<9/]P)<?,L-7B6E#9Z(:GQH
M#"&&BEF1E''ILX=.Z+N.#0=<_;G8F> 43L?Z@W "XHUP(N5O)_GESPX[W=CK
MJ3H\LQT-<V9^U&?6>!*GRDPMIJ@ IJ.$CQ8$)G),*)L9K?&9'5T+/]^%UL#Z
MBCO?NTQES/(#%&\:9-JJKW=\.+#XGY1_7YD.?- F)N6O>OGFA!$%7*6UQ)S$
MS%AE=WD[&II4@CQ?]Y7CTN"<[9^-'V1E^[)2YI0\0G4J7E"M#&+-ZII[I00;
MRQ,N"<FIQI$%[@,:@M3.Q:18SHUU_BW>HH,W,P$%U)W/([TJ8^I*BVO:;4+X
MX##F8 @OCX0N+3HT'*A,;9D5Q!4(:+"!I1):2O^+@G28;/V\./X^= ^0&'/I
MW^[7FVM/8%7)'^$GI0ZJ0P!=&E'JLBUS&L+'+0:ECE-N"ESJHLOWF^'-_!-"
M0'FD,$S%D\"> _XI6ZY<L<4DGD!^9)>Z4YNL<]@V)B4BQ+;)1\]F&QF.&FI?
MOJW X%-U3G6C-?#)(#V45+GMWK6\NFPF+2M/3/AM)<9.">&E/L]Z=1WC7NY7
M?D"=C<<OOM4!P71='&8)X%GC!]^ P*1.AP+AOQG<?0LRIH$PN^/0,HDSB"ZJ
MHS ';F3@ _2*/@5[)G\L7YD@=[@$^\'RU5\^,R'!\FS^+40?EI^B+2EH?3,^
MT UBZ'E1B1M)8;&AI5?%M3EQH( DH*@,B^"54N:9T[CNP'V^H4RD SF3V_"_
ML@EFHT.+75[*"YM38.YAL8%0#8@%/(,S5]27*2S+*TS ;[!60166::B:.13V
MI3\92U6=5J&\O-9SZ9(]XL"AYVO@OT;/,.:65Z[3*BYM;,Q_H7#&4WL&"3<V
M5.X<[MTVWT<A>T;:XM&S*IF'=C3, 2UPU6ZE]2E=QB#$ ANQIT/F+*[VL:FJ
M8C";3QAR7+8-$QC9&ZSN;5Y185H!*K41\'6U!L^RPZ30R%F=.5%X<W->+N(5
M%YS4.Z7/XV2X%TE57I.\7Q7$&L9KM6R5=R PA8P)_"2?[:-G/Z@(EJZJ,8&8
MV\*#O[:X084+.\C94A'Q+]6N!B6%)R#M FZ)FH:H<>AH:<6AP\K+E.^@5X\5
MX[&J/*6Z+]K>O>A-)]CL[+!DS56H0JIJ3 S<H,;?HZ:2>5O(M;=C4O0-?:'N
MYTHAL*J&09/I4Y38<.LRAA87-N\<FAQ%%7NBK/34T^3<T6B^7EIO-9/3E=H$
MKJ$8HX5CU7*/M6:Q@"V)& RSE=N&O?Y2.+.Q?!DF2+0RM*T^@V\?HB:EU^S2
M! R*^KC/FFI#>_D)70E[PWC%+_A"'[_Z6L:-:S)GMT  @:=.@I1<8U>KKCOP
M%,0H,TV\*\L+3^",:Y/0K!6$2P>JIO'7P#;GN\ZJ/HMA107S()V-Y::J&A-"
MBFV=_\ \$SS9Q'PM@],!@'?NH?M4^L&@9+'E#XKT%TK)V(6+3=;.#RWW:^#O
M=V@)#%<\BP7;;,VR8!CMV,12B&2\[D2N=_Z5MT%]F@!$J1S2'F2'AACC6/0R
MSETFL!?JG49^46U)F!1?DR676HD%*P],^Y6&G*[4!I_ $D-_I8:X02V3IBGN
MEUUIC$X7,N@3M!,O$B8L-\5@KJDTE8C[RO$O*FH0"5OX9K8Q)M14&GB?_G][
MCW+OI@5X>.5\GM 3JOR0;5-]:/5U/JE! H-Y;;/6G34F#LCD1DPY/;/?]EO
M!BB\*\JC3TWT0'N<$G]M5P8IB2*321#3/#*G24VCVOS.LBP/X<N[( M)0)6:
MN=A781W0V G3_K-EN&&U,;/-:D_&N:R&G]+BTP.W@_#L2N-PDYJ3?LFA. GW
M!>N!JR0EZ?&**R5IP"6[1KAH2\+\TT )X[SWQ3NF3O'3H*IY+)]$W5G"1U%)
MK0++XIFZ;IT/:JJ0V9PR0B:L7AU%)4TJF$%$A8QY3.C%F-XKVC"I8%FE$4'/
M%=%$7 -7>\^N!3TOJZ9U,;,36;X?.,1_C2A>5MXP2DR= 6*$A=UTA,4"C,5_
M.(?WV<516WQ:GKD9Z/<K?U_J+M.T^B1 .J^L%790^OJ!4'.!3J3\E5'F)-N&
MA$%'<6\3"15;C>-98=&I:.7J-GMI<0VQU!RP:<L-/?!07>!VMD&_LH8$9_L
MMD.[&.MV1#4=;A?^"IVO$C"+*_9-T;E65G(BRM*JS--%)2>A:8<-VD+'GBH^
M\#8H<,,M-!O5%#Y.#=@P9N;?AD&Y"!:]_ HJ*SV9%!O5KY&RTF9AC]4%E5E&
MHH.U.LAV5'1A,($;2T"M<]\NQ%U2?S9X[3A^P(5 =ORY%GNDRD=4XGM7GUN^
M-1F#<6<IATDE3+4&**>FVA0P8JMW?T'!"<"IR<L7)/IJSXZJ*J:U0FD\\AKK
M:;NZDWJ#WJ"$7SE/M=4&%_6V6QJ XOC6"GZE45DZCIK"DS:$S*(KR@:0HR/N
M61\.J<(]["%UE(=^GB(T[8WUY =)!.P5*"(HAA04OC[KZDS8LT(>5;SHV%X4
MF=:.$UVTSB8P"&U-(B!:&>^??:_<F217Q+RU"_6BU]N=Y00P:DW,7D55C+_I
MAMA2"7!OW9MPZ-:,#9_(4\6D=6?#^:EX$9<4-HI>X'"U)#P$5421QC$5[6B8
MA94,K]G**76F3!4Q9ZWA$@8:$F.99/%J[4#"J(YK;E#3&%O+ "%C#[4*VX*"
M XLLCPOIUX(6'KX1+?>K_\(^P$(NEXB;5IW 4_'*>:.V:L*J?2GF:TSD=HVM
MCM5/]II*!N?DA;K^#G+DR+S/F+6J&A._KI9!-63$'J;4ELY_E5R4%#9I.&)B
M5UF@3X-4!2T(?!,B78JQ>C!C+4V;QQKI@8G>*+!XA(8T&Y41YMGA\P]^,!56
MY5Q1O3!8(&?D<*V2(!JNL<[FT6E3<]+*,H'.G2IQX;"*L/4<R^VA+:LE;11L
M)P&?>?2L+7AJL2F[$!#^[)3?.OLMF&"A*#N/P#T#%6AWI8DI^U(U.!S<12*>
M*7[J5'%:6F%P5.8\>*$$+00$0_9GD9S>I)K64^;6\:HSZZ9^GP*<877"IEPY
MTU 6TDK/-E?>4M0\TJLKM6]#UN,. 8HS@ XI+]^HN;5DVPY_T=\S&1\\]79.
M9+F56Z&ZSK>Q+G(P")EMHN\Q4-$'XV!.OP20%<J;K]?"[+;T%Q:  \EQ>/1R
M2%7=:!C<(#'"U-*7TAYE][X"<>07I4&-K^(D#6J=P_\831G&*HIM:V#'@NU0
MZ1M076=@04M@ND,Z".D?AM<[K+<*X)0FU:80.U4+1%Y<UG2L>N7Z2)>94,XK
M',M$^*YU[6E#P9SF,$EBQ U%U6K"DM+&+RENNDBE5VULZFM'PS0:K;=)=(9P
M?P0VW XR#N/>"J.+?2G"4#]:>J/3LH#RBKME>8Q:5:4)'27E7G^]SI>69$W"
M?5F;34 WPDM' $C4K=K::D,[@8&^>;Y6/8I (VU%B(B;1"Z4)OUJ1V :**+X
M^ #<V_#&MSQ80 6'1;-D5.VHF7M3\EG*8($>^'_K-"L-*^O5_:^H9P6._^B%
M.[IBCU%JE^>_*"UK3ENGIDV'[?'L[%HD6L_4F-"IKT"-B-<]HJ4K7R=[HO&9
MWXKHM(*UJ_T>*JN,@[6YV#^MA/LL^AGCU<E=CTL]DYM6G8+RN\I!*5=L0AM'
M(F\+Y5$7T:B"Q%11MVH\4)K4G51FKR*4A3MV0S[X+FMZLWRE[@N]9<P\ET;_
M]Z0Z>)R]:QW8?1E8KV!Z PE'!KM4Q='759J:>UH[O[0)N+&<'80O"0;W!PBY
ML#I4I6YI4',:TGGF>=<>SK^:P!1=MML[: ^]SUO[TT[4BS8E*CIE_N+94I-8
M^-R$QD1")V)'S0O-:NK8QK7^[@?G$'7<]'':GJ:QH2C)LGOAN'N9D:A"/]:5
MRL#;: %^?-2>PW: CB2:@+(0@,;5C+MI)&^L6D3.RBJ3$M@>J$=?+;? &ZEI
MK0F](?!]8Z..6 V03%OE&S\GFE&;U&P6"<H]Y>S!3PCU$1TV?(#75S()VYM)
MD\D$E.>M%?Q::0&MK3;Y=77MB><7@FJQN[7G0LO3FY8FJXT*2S,F[-9R7>EE
M4VHW2Y<R[1X00TQ>>VAMAFUP4V,;:E35J&=V<V_-LM(#G[:W#MM2OE>< ;M<
M'FM2S9PMIRP!<YGYIK3\^&!T!0J)RJ)#]^CVJP)A5@&74E1N1-!BX1C8<");
M5S<G#*30<*J2:^<+&H1U9P</CQU7L6+Y6S'C'(<I,='X=.4':XI)JTJ/Z]YT
MC0T)O-8*_#/C9VEC5] .A,R^I^""M5QA*.))F2(V44_["+6(/GYWIN0"G@4!
M9#BI2OLZ .&I:65RBA2A8$FN=)1&:E;'0,0G$+*?!(_!ZTR A22+NT5Z^.X4
M#6Z<M$<AV_27;P(753H>EFZ-!E7-6UN*+":5S]LF-<T"JN!1HP)=SUQ7N*F#
MK2$%;1D?V"WPJP9N9'#!\*\-!<."<F:]XDOR4Z/PL+3>[N%M"'AWZN5R;]7Y
MS_>@:GY[7GL[=EG< .S&C]4X.Q4UAA;WA6:'R7.99V18Y*+2K,YDL@#4VF-+
MRQLW8S1"D"XI// :^9E:;@0AE L?$T)Q_4)%S$YU!7-#RT[U5] "LH5[X>^?
MHO7>S9N :D:\%8WA?>/VVSUZ356=AN>\$$#S8EK#D-U9\D29>XGL)E'B +[3
MW\(#Z(HQ!S(<%?!>\ERMS&MMM$M%(PS=(V];E_WE;?[\'?5.'Q??I0:=R>T^
M.[)J\R;'^LK_<I]BV3#P7<I7(UN,KZ^O/^""A+7XY=.G'S_"SQ^1X'?_'A,B
M?P-2!&G]GW_[F#0ZS>X#MC:],<F#8KN+%TK^,=%Q6A3B)P3($Z1/D@;(WV03
M1\JI.H-*"W\:FYLT1$E9@J..\P;$24+]A$CZ!!H@O 7"FSA.1M5I$^J&-)-C
ML<7MMZBP552TRLKI=80PNL1?DR=4!9,@:>!HV-GA=%YZMF#I$C4^Y,ER01@X
M,C;8D1Y$@I$SNG$\[QAY<=.+2R%*%*I'PXXMP,I0RY"PI6P6XB;4?]![OH'I
M8YA#F]VLC-;HMVK_[JL'6(:'4==4$UTC%WX[3DC2 .$MG!#6!OD0MT)D,]^3
MO_&61INND3G.["F%<TMP[@'G-.9\(SD?;7^-S+&Z:O%!1HJG>^S]=\\JWEE;
MD1"FXTH%(@2HD+]Q.J,?&_VZK0Y^W/?1NYQHXQ)%W'P-<%?1H3$'/W$./(CH
MIE+(@6-!)@@D:S\@(1B!B2-P!4-B>38)007(KJE8!W@<#&=6FLIE0A4N8$[W
MJ)B*_,AR;QIR=D*64'PL!A//MIEMLS+AO1^RYOZWLX-,:QVGBQ,D@N()X30)
M(TJ ZG'PHIX6AAB*=1!*[L];P$1 &5/-#GK/WK0K9V>Y.?_/KCH8UN0IM$F@
MT1.2-'M"DH9AF<9-$\<CHG$"K1-H_EL:&G5%W%H'\H<3\N73ES^2#Z+AP_=C
M<RMB61\H7']<BR%1AN9/KL/A/CK.N* -TRNH$X4\2>B?$ YL?)3,JG/XZ*WW
M[IHK/78*JWY,?6P6,PAO9_R)OWBF- +DT1A9,E$XAF>'5)+85.[8@ERQ?5Z&
MHAV"#0E!3\OK<##T\XZ<)SIGV V"*DI3:C/D;]C&MSL:ZEY1U/"\&X0UHRIR
MB.P)F7O*H,VR@X;=&7OH$DD =EBP\_ENP(UV#F=7<.@OWJ1(GQ D3I@4)QK0
M).H,RF"!S).B+YC4P6%E9(@2\-)UBW.R!.F>Q N9B=N13YXH@8#>8V--G3U\
M-)#U'ER R9:#BQ,76HJ?C$?'GO)LF@![/1V>>MI(N?(HU3SA[9,/T(/ON=:0
MR>>L&_!@P8X0M2>PTGE?-)I3#8V:NC6$]P?AQA;BXTBN4B/YP84A9 \:Z-KH
M1EEI080SAXU!=[TQMT,"F1.2J(L%(#E@;L?&RA,2AQ*2Q!UXXHRJDRA)C6L_
MBC$0<-DJD7(Q.'<"-BT!^_B!E\$+Z6MM$AV!_<S7JY/TA02\,["?_7A605I=
MBTL.#\;Q;%*&QTH:&I4QDJKU9(P>DC&:I\8H)0A(P91 9PCV9ES;BKE12SD
M[+=;B\ES?49N[+-#AG7$?1!QK%U?MYP>LAQS)4D>#2_J)"8,)8= >&P,O=#@
MR2]@2?\<-4EPQ;[D(8C-^2PTY# Z9,4)'2E;F0>R;$2*I, @^H"E&SK!'WA;
M)Z!M7(UHO=<S NHCI=<PC&SWB<.Z!92!$I]R0<-5X.PX<K0$?^+:@([K039"
ME%9.B-(.;''9$N%-'3?CZL$<<V^IW-M)8Z-*&)<>#3:'2^_%"7R/^T*N PM<
M95;P>(9<=$[(/@,F\ H V Z#^'+P9D\(31H^ :%5:?H$I0A;M Z>5-C\N&*J
MKN&(585\&"[58;C.# /H2&6K1#:KQ[='UW"D%8L-QL0J&I.1G7ZRT%6*?:C0
M]M3U>I0M$=D46$Y58U2QW6U<7TD-[.?<O03WMC(,^UJ;W,CO6 WCH&Z&!_;\
M6S%>+32IPCW88 2T*.D@"Y(5/G/11:2[[B?F\K>EHJ)(,GRAI]_TV2K2P0J"
ML?95T!S=%V P;E21M9HE33(I.^Y3,=T0:S;S5XY0W/+0#:DL+M(2=_: 2+=+
MUJQA,IN?7Y\0J33FC:>5Z\5*]6]GE HW,_<!"4%L$]U@YQ4.F)7$'-8KU[^=
M42H*$3J.,5) O>,_?W;8*1VLG@\8W=[#BT1Q'(AI<E>*V5]TNY,,RE\JA ^(
MD,^C'_DKYXPR@8!F5W4XPFF(Q]X3-D=R[4WA -0S&GF/_8J=*L<KR/9H])CB
MV(Z03[!+[0;I=0<WP23]($E'8M\AJ>NQ,DY$HC<:S3 3&<$2<\Q]0%T'LM:S
MC_?2-_P^<-A[( '!T79^*G@G7WJI150'.T[TA/ S],OH>H\1N,I?!5]&7Z[%
MP$@)VMO9(8\%!_" -WTQ$X#J*9(E:M-$:9L\'8A:3K1/L -ZL1:T#U-J(V/L
M3<U8G8FQ(J;&BANB'7;DP77E1<+")AY]84]')86PM-T125J#W]%(S&7],Q0F
MA<V54-'$R&X7@[.66L 5?(WN%@6A'9$([5BR"KUB%;/Q+$!06]CB,)RD;ID"
M=L8U%"QFYSD,N[XV(D93-8J-;/D9@@-IUB$+,B/GJCU3D[UF""92QAB8 X6B
M+K,KNPZ?')[XZ9R]CQQ;!*PLV<48KFG I.S/?:W-2ALG)-4*49HY9HY3$<WR
M>;##YX'U;<QI*E96<KA2J4\B#$TX;5B;7D[[<0A>$(?@%5N 3N![T>"1\^]F
M6*^//KP?G?6RY (+W[7/]M&='_V51N>^Z]*5A,(3V41[/1?.<OA+)&0MDJ=]
M1)ZM%TH\/R('RIY7E'IL$XCVN49Y)7OP#0R*030GG0R:PWG2PZ78VK*Q% 04
M-$=8>X0U2%B+)&Z20)OD_!M:SAFQ-QZ/PHTN]WC9]AX=62J;'X@[ID=TRZU9
M7=4 XO48DST1KN;R!VA!5V3YP"SF3029MS+YP,T#H_D$J/G5,1_IS+.OO7 ?
MP$ERSZ0)9[\-A<FSY^H5K9 (FD']O2,;8I(G;XFL>%/C/NA&XE<L6,DGDD<7
MO;@!(EN07@''R&8J6+1B+G4">/2;L:Q.1+IL)+ @1\!+8:"B"-[TU\0%'D&5
M1&S6QC'PH[S?ZB=(DX-143+%L*_QDQ-5 ROCD#)]5LQA.4O;M71$>57D*B_(
M\]=9((T;P4,OU4P*95KCS(W+>>I8J6)?IYE=NGOSV$819XB):/N MZ3H$B"G
M"ZA%19E>O%J[OC"@"G8VD--F&1^&CZ)H[829\4'V"]/FH<'_H4'6O'Z!B]<"
M@A&N; 1@#,EN'\!W$?A'O; .P.)$_&#9%X'>N/<T1 'J'AWY"$0.>;MI./B3
M!&XI'@]>&MN/W<V4/GQK8Y3:+]7KAVYWKG^@5"R9&#1R!Z"F<*3_YA:8*F8.
MNLHT2:12)_2+$SU+/1,B92%^(>:X[.Z"&RN<7AGU6+-V(J"X.(3C"@'-M+CC
MCL-K6L)IQO#HJ+%*MMTSR_L5GCU=$7 %*:X-!&+XB#H&#E(>\?8+AR9&-E[]
MX%=8=RN.4$/6/)/OB&)H&$3 D\WDPWFPH,&+LZ(]=I8@A6>NH#;R)AJ*@93E
M.,_%^/C_KG5@=T-@O8)"X,:W!O!E$$1/@2I!/0/0/1I6W!07),T%^7!QL;P9
M'_%? 6]S(GKCO$"BY30:_MGAUOJ['V#>S3Z!(=C"*3:11\$'%U)LAF [NB)%
MQN,Z!:;9AO7Q$UQY[#6>3Z7>3UGDV1!'J %??ZCNN[F>:TN%L@OHBB.!L+]=
M*O+:SK:@]OUG'TAGE33@;0CB>-"KY(^1Q?3!G]!'YJQC9TYYSC2=1$TOE66
M.+\'?#?UU<1*8N(5IE/?.@P?>6]_)8>#2*RJY:V=-)MZ<&.?>N:7A)E1R&>?
MU+R)XV/2G19_L5Y<)ACJHP.7-'1IO@?J?6K=R5C"^9KH9D>"%"]]$?$G7DA,
M7N,B6K_0^53.%S7CRRX <(R(QT=3UO(.O4C@TTH!<0W]=?3*%N7Q#$-)-I_(
MEY&@)"$MI."C8ZXPJT\5AYHN[ OGQ;&95"N2D%^PA;CTSRA@\%Y8AUO?PU3@
MD!.E<YX(WD!(1!-,2@$SCSX@]?%83$F9HA6),$[L$1.^QLI2> +.UVEII<?-
MP%_3$+B?%;VTG*R#L9-2]R)/<V,\^1[XH_-HA <G_/7L<$:]U?/6"G[MI[5/
MR!*@2V*R^C3U@W*6T=&7LJ?+P"U")>]\+P:EZFNM%R1/B$KTB/A1;[%JIC1=
M7T/R5N21(%QT33AF7;(M%%&(HP%G&,?>6R[:)[_NK<!B_>N<NZW8$PUR H@&
M.4 ';U* \\2-DK]% ?N\MMQP_+-3R["D_+/C,>&@^"=L 2B#$LA!><%!V<@F
MM3QOGWW79EWE>1_O_(@.Y_+&:6I5L(S&4DX[(1KY%TVY0$6H&H:$%)BR^TZ5
M(,\MI,66;*WS.!:[!8&/$C1(A]JVZ.0I/FX46.BA#^2R,S@%COU-C$3U&5QV
M[.I R2Y.27]N!<$!7%'Z!#UE'=Z_!O[X]KPA^4C-VCX*(XM'8HI$E1+N#&(1
MXK339 4>O$?%93:QV#%U/NUX>I.*#R&^,F<4$D(A9!V"# L3&;6-S)Y4&2D:
MFPO S OHR$HIV<H1<UBHD[*1-G],CZF72A)/GN/KW;WV;/KV'[1K:@B195(0
M(TB-,'*3[W]!JLSC8R)]>.AF0\F"G(%<CR4$D;NN)P99C#3_038!@)V*."::
MT9@'<3R>4TJV9X"9"X%9!7:=>QF!5<E-4"P1@1VNANB9$HJ9:U!/K.#(C _Y
M58 DDT?CM&*?+(G'*>V#A;B<=[1OKLUB0*$"@%-+<>*2?3N)K9<G96BGW.]<
MW]I3G7K9!0*Q N#K/E]+1CL;T]->R@IM6$D)]2-D,.,OJW!II[FTR)-H1$?$
M(*1\9F]O[J/ 0QYZ!$5B@F=&3CH]G(@HBB/A)!ODR-@).3L.#P;YP,Y!'DXS
M+A)#YD6=2=P8YT(6<<^'05.%\K:K$H'&I_Z!;$4/Q@5JT#H<*95+5<;*).>W
M#$ _Z,[^J75@2A"FKW@.[5N10YL/3>R_\,B]87WO]!SZY;HX/B;S@,9I3SAX
M +]M>SG<)SE/!!Z!N,%UN=H/R%$>B4:/,TU>FKT/Z [<+RC'_1/6.[;"L5N]
MW(=*I'G1HC16XM+\AL:@V)-,\"PQ>9%IGD_$TL)TX7DE3X^+/07]QA43D+K'
MB"1'RTER8I\HSD4G!!HAT,JQ<JMNVUO(2D)^_'Q"OGSZ\9,9W;] 8,1/H+X>
MWNPA,1[Y=0-M'">G=68-R2<7O*(1^52QHO!\X1>[X!.A-20R^$ (8/R<67/Y
M 1D\E9GH]6"?C\.M6+R22WZ%""D)Z9_*C.BRA2-D,A63VWP^-=RA_I8NV$K#
MW C]U7Z0DR<FIT'%DFAF9[;-RH38^#RX#_P7AUT=_;3D@N8)9XGX 9%TCX6?
M JVY?J9*L(@0#^+<"L$N _^ -\F+Y:*3>&^?#DX?E*C$]PB0Y]A+\(?2D.'$
M1R.-0MK50TU]#B_0TL'@"E,%JP,*Z,2\2X#I'JAP^N8@%8R!'5A='GR7T=B
MW+=\#OIYIJF"WY<_?E-L2GDPXPZAXOXE+0M\#MXV/.Q$ZUS,Q_:_J<%)V^!N
MK0/Y U\"Y(-4_(RKK<P_7(5$L-@_K83'EQ_(9^N%$]!5A"AM/>7(PC38EA!&
M0K5MY5EK8_/<2T%W(NB1AB6KUHB'X]HC4C9+M8EHM%PNY<TBRIWN]. CC4:1
M9)I:#&'):C#]^+]CM^/RE;HO%)T[>L!B-%5YS#WC&H^^3)=>@'_0\]2X\<-0
M>K8ZWAZPP'<BKTC(DXOR<HB0?/G&EJ ?V)B.$7.R@=86%B:_ F1,0;_GRH<;
M3"@:N__R;I&D7]+K3I3'KF%HAM(5(OOR&QK&=.B*FHY5)&=%R/)13\F_<-P]
M591&J^8C8.ZQPU%):8*&3H2=&T#7_Y<$[^]A\<A/R/O%[-MAULWSF87PPV8Y
MYTKB& [*P)O6DZ)+Y[!D)"IE>()"V$<<'C6E$%K#B<6'9XM]&%>J*@HAX)80
MQ3'FCG:%&R]+M8'A$S*'AO2 ^J"X/WW/_9^T)"X8>0S$7HEY_R45.B*,FZH;
M$G@?Z<AD,#+?ZOE_AQE4Q  43;?VT-GN>1^3^<P&S )-;4DL!^2H)@X8"(_-
M#0\5*PI'O^F9()E3/B&ED?8W^M(?C\!E2H/+HPI+X^\U<@H2: K(O@]( A#+
M9 70A"4P#!OI3+&F>"DZ[N,W9)Q54#K1#HQMK+R;,\&%_]3ASS@FYT6!D])0
M%_G)M:=<=Z,S+)C,W1&]I/U89BFX(W0Y9PW,63J]3RE[)J*3X,&R8L_R<>.O
M\.4&S1PQBX4!6 %2UH()I!HB9JL51 V&20;#!5VAP:(E\F2A?]D#W3I1Q!&[
MV=%R^WCUE=@<'@_"1'@:RZ-D-VN?5:U/LA$E825)-V-:[3I;LS6HQ;?.@I:F
MXV'7B_%4RKMGRH15H*85:%1$.O0!K$P+V9#8'$CJPJD<C)O49$B61+B&2'FB
M(5QC<+:RJ8MEI/SQ\I+*4JR/&]08B3@%?F\G7B/S-4^579*^=^G?[M>;:V_E
M[B'RO>C7%>98*TKN._?.Z+/EKN=K(()YR>+J54F!!PWB4>(S@IR_S!-/$Q[+
M^;DTPO*F=N0(E!4YY]"B)9F&P5'I"<<"6D6*EI=.3VXL6?%O:W6(DU]9%7DO
M*I$\OCS9MEP5,>?Y(DNQ*F:8%3 UI3$G9.Z1L_2JF*&75D(KG]([0T)SF-5O
M9IV4A'AU7BQ5:R5JLE;\1FNEK/J83JWG_@L->OH7(PV-<=N+_5-(_[%GU\3E
M"_M/7T5U0HX@/:WZVJ%X22]Y PRI3OK7'AI689<MZ>K9\UU_<V K?B$ NV^<
M%?5"@'@ AZ5A3)P/D!XBY,E<A;N4DW2#1'$_\/*6T.'$E5WASE-:,[9K&2:Q
MR*4+F=(F21K%XT@V2^)VN3^=SNSN6H8DA7^ZK%P/X[_SWZ@-6?BHO(-Z:8J1
MW"G22RXU?:FRAN$EG2$J9FAT&Z$50(A:>$\#?"9"DL155]NGH 4N.%PAP9,N
MKHZ""74"CJC7BMM#Z?AK FL>A*&T0SR2()?W"ST!HJH"<HZXDTO_\BVB7E<#
MI0R"S:A;.6V0HCGU8^,ND\XN01<)3X@?\T:1-O]!/X=CP[EFIG1"8*ZCCD+5
MU$\!R+4HTGO0K9R+9S>SF8?DL#J.7>^&1KFX7RK5S!L)8\Y<1FW<Y\T@Z5^3
MC*]:O)6'R[ZK+>%NO#YE\'M/-4ZRWB5!C3J=P9@IWL'\<8_IQ 3]T3$<*YV?
M!G)I+G?V&OG-/B:3A1GL=3IQ#<E3H3N)3J[P=(/' T;KHH;,$IE9[RR.!IG$
M*'56/V8N&FR/9_)+6L3MYUD2(-*/6QWW-AJ==S=YH*'WK]H2*M9X6_"3$KRF
M32<[.O]9=8&(7,],_%T\\9H'H2>F;B&6KC@%E!\PW-<$KFXYF*[HI/KC"0^7
M_@T.=1X14..-<D$#Y\6"E)=)M@,(@?N9VAO NX1LF-B1X1(=)4T2I4U<+*)5
MDC1+DG:UIM31.2[I/.DM!D=O$HQ';Q]2^\P/ O^58Z!;*T =ZI-^!5I0&#TA
MO!$2MT)D,R>$-W3$/*OS+/A\BOE<"=+$TL+FS&4K%>0^J00&)XLMO#_P3!1/
MG7YZ8?1N.WW"C-TKA;BNA'[C\"A6+M(\1:(2BY?,@@# _/E*OCQF)E,V>X53
ME;0N#E6HGT%@C:;<8>V)CAYH9#&)R)9VH=F*/9?V&*IT0=<..Y(Z.^QSPB2V
M>'U0:!-!?'17V^'Y2P=W"2:I('^$["@KKN&<:3)5WK.*=]:6]LC0#"0(T-"4
MCKE/EU/Y*V2_1W?RHANXKA[H#G*-,<&VGZ)6D",Q/0UZ6NY :@$\(G>:5)P7
M^\8&7/+$;$_<J?YX.$A%!%#V;/".C VYGBP7M5/"&U8A> Q,9$,&@)DD.D#Q
MTA]-S1A+B:C-$ J+GGN<TTJ4./HL,8-PD8[O5=-)C&YWN8^#)./05R6O3M<K
M3@F+G O(+A+3E\%G/!3M2!@LM$PDX<J03\&$_;XHVC$%+GK%* [MN% 2]/F@
M(JY"N]_,@!3@#7Y"O,&?QH=9IFSS.#X(7[T<!"2A$X)RG"XOU_[]3SW[4TR,
MW7? E++"9\05MZE]=G@,P>4Z2;P4*ST[S@DB: %ZM6R"/!W(!VB%.-[WRK[3
MIUX=C^<LSA8R+GC5RFH81)#JS]ZO4'N^H,&+LZ)A+Y0M00]UXH+@Z A;@_*1
M2528969T*2IYT:.Y"71Z 7V&V((7FH"%LG4S7R^MM^Y1';'>@%NU4NV0%)0J
M3Z\)0%S6VY&SGP%'CL> HR&O4F/@:L@U/S:[RDG3><HUZ9/2IIV;GDX5&=.5
M5H>!@3A)&Q[-L3.D49X=J.Q^8R(IZTS$2@  WF[;T]=+$N5N>I+B;W)8Q.H?
MR3%$=I,+G1%/+W+YFQYP]80U,NK:3N>='SK10'ZH@IH!O].!^$B?S4A21U+N
MXC7+KNKNPKJZM+(KBQ$^)J9*[P2%)>_(6%*.E_K)TG06-'\9]]1E=] *:-1W
MCS\,*64XC,.5Z[^&'.3#A$KDRG("C(*[18 L=*4!)$%VAK*.] M 9Z1YW!_>
MF)RBO@CT$1A+1?D5<3<V4R*900_[O$R'H,<ZWZ._!:D\Q@_VB"TG]U8P#S#Y
MHHUS+(.W.P?I)"8A=M9; :1TY.1%9&P<G'Z$3*:#=)!3 5JX8YSRJ%= Q[-]
MU[6"$"!2.5+>Z+Y(<9K3^1H.6SQK^SI<Q)E399I&?H)K-,HF6I]E8'FAR^,X
M[+_OPP@ZUNO05E5*5WY G8TGY/@5I"65;9!9% 7.TS["=T_DPYI&)8:FTWV<
M,4B=[UGFE7:4@1A?G<B>E[;C[L%#70+NTA \E7KI]%6R)*%[(GRW1M;N\V"D
M 1__O_C!K]Q=W&'2<M^(-?GH7ZF/_B!Y]#OJHU]D4K'41[\23P*_\T?_*^\C
M.)Y#)T>.=)O,X%;HKQHK4F;%BA0B>D9$UWXC(ZH>4[^D%U6\#'\C0Y&.?X#'
M96:7C2Y.,;Z<* DB"F4\;__<1DB9**03&"^M28XD]/N='U&PQ0*>@0(V?]/3
MK"/)0[K&"&X@I(_'*$=224-M:K63B%4)RQHL:WNV\R3Z7'<-G4*42*HQX)X6
M#=VP;&5=>.OY.R'"S?=L7/_8,?E5'7Z;<)PX!1\ETZK6L@F[6K26 [.84LTE
M+,9XD Z3$+V-DPA]XV8&O/WKP@<!'>+Q;\X' ?TY)[?DKR0FR\Y:]K_G(V=V
M'((/>706]U\/+- @C*06V6V:EYOQ9J(H4NX64!A0%%.SR=P'#KMR=Y8[F*-M
M*A3PA"3-@N)4S3$3-PU.<_K];34.3=KE]D#^@/ZV?R0?1,,'#5%ZX'BRBC!Q
M4>^D])?;G>L?:))S+5#)(^+2$3"4BLM3^X_D--UI_?EPBUC0@F L'WI,;G<B
M]C!X >.9O#-E5MN^KP6A$N!MG&(C)&E%J@ZTXK9+E;!(+<I$$=]#^(J>=@^9
M2S0F>%2<N"5,C&Q[XA#B6XB&_*?(:9%=A'(177L%FHQ^V=C5AN%.RZ_,> 6S
M2ZY(*:8I);O^$<K(HMF1RDG7B4J5C=13@4YV9+ P_2.4<F7NOY#&C=CD-@,
MY.=NSLX+9%/Q,/W+=DN#E6.Y@RP4V1*JA(17MVB,_#_6=O<_8$V(!D=.KC0>
MS]*Z*'D%C;=PZ9:\\JPRLAD]I\2('*="G]0ISK#-ISAI;<P,.)=>!,S:-BL3
MBG] D/C<]>Y#>D10.I%_$!1.YMYH.J!!>4E))(882B+NGJF]AUCQ0EA]MBPO
MP*A)[6&2BXG6X/PM32. :U:TJC&+E^8120<J5@V+DB#K0AJ8+]=KND*/"70\
M(;-7*[!'EV;EJ_2!/TH5VU,_5V=)]U2^=E.HBIJ\G@=G+A-'A1F"0LNU C1B
MLS7^1#VZUN 4/3QG:C:0)G.GZ:E?#""F8)J='9(B(N(;=PY_4BEPA7AE+I\M
MCR/>AU\APT!X[=VCJ6( P+44#)G20_#>+01F@VZ>$/'V4X$5^>T>L;Z*% %L
MV'EW08Z]UY(]>ZH#G]J">$3RH1G/G"]'1$!=7M#0V?#70R_;M43.5.AI,U=G
MLNB!J;R']B*7/X^;WK5XSP[$264Z0""J3T0I=F:[? .!063]1#N>>'-G)9HA
MY;D2!S@B.R/R;B;=*9%V3$I\IH:S3!C\A3J;9[A49R\TL#94Y%_/CJGEKO9N
M,J8:TEBQU\E\S1UJKJP51HG=6F_.=K_-(<UVM7+! P@\@KG7CFP%S%W83@'
M[C%SK:X R?J*L[Z.6=\*UO.8NT; I+^RVP<BX<\.XGI" 1-N[6=GU^.*D)>=
M2F[D&P+>]S/&E V,7;G6IK.V6M @0&2RO4WK175T.4Y%4X'@L+3>[D%'RR1'
MQ1E^Z7-7^*XJHP8X#@C@()HN<<3_%L:E$)0LT21$UMOXX7$:YU]]I0ZS"#0]
M8TL@RNY\;]5+S5*%S)80/SKN*M+*I>(&3HGG>Z?'RF7:,?O&#'?<;<L/(_'6
M[Y.)..M)QZ@2B;3/Z8[L1C<,&V)O8?>E:D=3;N@AV4B''(815S_I10'J'8.5
MR\6A)?9J:&8J,(U.M"!JSVSV[&";TG(!J?/:$[Z[_8%>$\*( 0KZ24%;+\CK
M\ RF!.J$2\!Y/65<CAP[P[TKN(E!/$S1TY(=KB[$E\!E<?GF1.C]UE'GGW4V
M$0:-==P<"; ]'JZ'UQ-E38KDD.)>&MF_9-P1D(M8<)XT0W@[/*@..8>FN)/C
MV-8K'8RG41J:S/?X/ITQ\'C/Z'.%DEY8E.39TQ<:U4%*D^YR/JKP6DNG.>0S
M;@(E%SDJF'NB7(L7E$)5**Y'7SL#\I12.B)9<7YI9(L+L0%%Y>+B$(*#,3I#
M>>'>Y1!!_]@[(=ZHPSPT1%LDY(WA ;:*F^-.DKR]D1\@8S(MGR626=&(\'F+
MF57:T?1<&9/IU",FR[E5ROGX3N!,HKP.0W9%7V#P #=F<UL._BB,W9=OX)''
MWEWF' QB%P+9%YU>!*./4\KS3A !U2>BZQ"?4T=H'833"4>/&OJ+%6!<_X,5
M]7OZ2D($*&E[\O;O?@J52N5!SS7* ^+Y;?I @0&ILH/(M9XR@B N9868OKAD
MH85CY#+U'! LX@,@!$P7R2-_$D0:>,R$UO3:1MG8&FT[:1 FJD*=QLPK\ "7
M2S\W?9#.PLA9L0>E@B^H)2M"C]ZG_#:*6=!B4+OS/5\:'/C+:H"LJ=QF]D&D
MNOU>TSMS6'Y<E165:FS]$X1'O^D'GJ><;;.2.4V&RV6 Z_Z LAK7IO8Z%20]
MB?,H=,2Z,/$&8T?=56F>1K=).*&UV01@\4>/M0?Z0KT][:,!29,$Z5D0U:4
M&9*GE*TES=A<.V/W@;]VHB[Z-3>K6(N]&I+8D3+7!C!)@^E0P$-<>VQ,Z/CP
M MV95>=,G_ZS1W\S^MJA9DA7#N. KFD04!L/+/X8YX_TSH#Z@J \UH53*R=Z
M/.RDH?0E3P*HE^L/B(.4=6@4<A'67'D"("L4D591U25 6"4&*RQ!&LXV3,0.
MHZ7U!BN.+\\AHO5Y#^ @97T@22?R.+B\'T1TA(B>C&PD,#QB5='['!$-[M8=
M&[DH&;FU&+F5'#F7CYPE1BX2(\?/1'WA_'J'KC2L/S5NIYW';=1AN[5"UG_%
M[GC/2CY;(9TQV0.?C+\XT?/M?KTYL[Q?!S%Y\";5=,UD)QIE(R!:):^L67+[
M>/65/+&&QUT[.@9!'$F">=70*QLCLP+FH4$]MA =@Y &QFH_$B/[KFUWEG>8
MOWH0E;J&V()] /K$>]]U5@X=!A=%M$)\:(:XK!VVS45#9"=:&MO7<!1&I9%/
M,(CD"= G<0-$MJ#+&W$41C,)$>JY'1G#8P/+ZX*R2V;E\%!7SU8OHIZ0)4B>
MJ/31>IFZZC2AE8S#:0Z0AG-L9SFVE);&1J(9A]-,$K3R"1U75-MO]DSF>G:"
MZ'#E!.S/5W_Y[.]#UHOE*^/[L'QFY_\P,%38%OGQ,T(P_CBR##HF8_)-PQGB
MC1!LA;!FB&R'\(8(MJ0):VQ,ME/2=7HR1W^<6P?NU,>V'O@T6FY?_SY)D>\W
M05.CIQ^"1CJKB-J0VJ:?YVE""_/D:$-&&80'=54IC*P817WQW3'^O2IT,ZGX
MHI]*O A6'[)2L9US,;[Z>/ ,$E]]WWYU7".)24HSO,I.??.CV"!W3O_4.1O1
MN>/)F=-U.-5S9^PUI.B8(?)#6%\EU!]GLM\5("@305J!]^/4M=T)(["8T:<C
MG\+Y(%2@*C5D"A!V/X[WP:/J0!-SSD0A?TN#FZZ0RYFM+<V+".(A@QZY_F4E
MFAIW?X[%9RRO</ZN./"+X ]:(+()+;#2H_*:EFNFP7 L^%" C?%6%*-_N@(H
MQ%1X1-/$.YV>#^F-"#Z^,1MCHN?SY]ENYSK4OO1HL#E\#?S][MI;#? 8XV0)
MITN0,-J/1WYC#\>-6\X(\*'I\3P</UG5AYD)FF\]YVD?0L;S0=AX #U5B.""
M[,8E@CQF5)\X(V)]J3W6LZ9Z]SSE>*ET?_2,3WDHECL:S==+ZZV'-:(49 7\
M7]A9C%@K9H!V!F0XE<(KQ34W(Y\0CTID'0ULR=AU[M,RWT=A9&%6N.X3J>38
MYE1/B$+WF'@J3ZGM)T1U1OX,R5Q! KVZN3.1/V]PCI44B?7\ZLV06)&QY];Z
MNQ^<N^P=VQOPI#IG#V ELJ8(MJ47"V5D]C,A2*W&8&S6I7MFRK^_9X)(2;/
ML5]?<LBA&'-K>8K!LXZ%)74])NZYWGB)9U'H9+T.. P __?:NQ!>J)R?)0#Z
MS3S[T4OTQ?$O9P)\ON=;0?:!?+!%+R!0B-C2'99+0AQ;$)5X>T]57L>_QF#X
MX[XPC Q9O.#E4%VH0R4[(/?!,AXJM1/*K^1LY+P!!D:J$)KRHO,BFD!>/@G=
M+)";'T.ZWKO@K31NGKZ3/&8T;QH]I;ZE<4D%NX:1L\7L$WO.K(OIW=G32TEY
MIBG7<'&@ 7O<S@/,!FC_Q7+W5$*&#Q5#P>@3)N;P%@@VD6"J'R>KE?$5.\;O
M"W();S;;=UTK",'_F[_?1G^^]42*/SL4$^B!FEV&OZ\A.:2*+Q "I( P]G:&
M&,@(&5F4@2AI0L$9&%=R&)S'Y F7@$1 3ER%M_%Q(L9AK0HAHGCN-(LR:71>
MX7V0\CH81RSV,_#$TE\C[::A6P0>?C2R$J]LB\DK)(-"'7L I1U_CG<("D79
M+"YU\<2/^F1,4ACB"]5:P45Q8456S]QM/(&A0I, T;']4(;FIB GHVZ6A)O"
MC@-RA1#8'OM="E^"J[UG]_<ZD2V ?!PHKIC286$-K8SM>3(XFV(]*NQA!'_B
M,BO90^I'PUWA<2)!VZHF<'3=V79G.0%T8[[&4_/9=[N&A">T@*68VE&PD-+]
M)7S(=(B1SX]\($V<[2[P7[3@ LGD/'-O88'KL_3%[#A#0$Y8<0F3W"Z<<.>+
MV%HV8Y+XL3"5QJ-%WA@C-B@-V-&_'__%W)N1PF.A@!'4@<3)WO6EB>J%,!-3
M&=MU'J2("W$]_N?>"MA>=@_L]/:#KN*0I$9B<H33.P(64K%JNOF(=X;PT;[I
MZ7PJZ6AUN.S=^2)O=:T<8(0/^W^ #WQA1Q.38=+A/^Q5E/Y"*=G5T80',['_
M$H7824IXPR+P7,I\J=;XIL9&-?^B>1<S N(PP'\)54<*!B9(!U61\-E_]4#I
M #Y\@&_MNXZ-(DD(NMGX!8"%UZ[_^FV-7X%/S$#+S(3KC/Z14WQK!ALWO2XX
MHIG%,Z71C;_B,=T]$A?+70.;1D3\02(;*0;+)DXD?YJ2&@_%IGKU2 Z0:,R9
M!J>A6 \=9TQ[9&LF7/E[2-I]^;9B0NQL"Y^&4+>G,N"I#1'>$N%-'2??A2\$
MP(/^T^@8?S&J;L_M5H@(/.JFZM5S@VC J'9Z7. 9!7IKMF/=KSY[YGK0ZB!1
M 8\++CAPI34T0#9Q"^-J"P=F3*RP1[+@]G)N>T".$M)ZX@8&YDQ=@8\_+'X0
M_%D%_(WO[1M&\S6\8<"0LJ#!B\,.L45W'2%F6&17+Y)$EB11LM"@*QR.GS3F
M; #9=[4DS1J0@]S;Q-;(![?.75E.@.XE%^R:='TX8+LZ3@C'*: H/&<2FD?#
MC#HGE1QI\A8>CC$U E(PIH6#*ISI)7V+SMSNF3#K0+0)-$"P!:-XVIWYK #6
M3I@=/9087:UX<MPD&Y*2#.GLD!01-C7,@W2WA]MWON:!)+,7RW%A-*[\X"NK
MV_7M,4!Z)MXQ&$(!FASW#2!."?;NMS*J*7$;ATRFCU:&UDH/;:B4$S9:8O&A
M]>*A%=C-5FIH-V,.+8>@VV^W5G" #;CR/4BS*38D:G]\UV4W+.2G0EW/UHDB
M>#2&;/2$"<EA)6P%V&BX#2QZQG>NVC?X!M4\2O>$&BCN(%A $4X41A&ZB@9#
M[*P*1?H;&EHW/:KSW*C."T9UEAG5*SF:\Z+1U'B-3'" L_"2R?(-<LL7U=^K
MS/(-E(&&91N*9?O$!UH!4A[MX9LWJ=[TM(BI9M4;3:@K\LB?K]?LL9$D#SX'
M79?]V#[Q369JD_O0QQ:4?-0G9(6-0$C N.J)P9D4$Y8PQRDK*:=/""<.P1W'
MQ5LJ>T>SV9NL0,-SK%U[813LN;L7(%0MGRU/)*I$N2:\%O#XF= 7_/'"BFC\
M2#(G5XIL<0HK E8L8LPD24$Y/TE&T()H(RP"_I)4>7Z^SV"3QZW)$>2A>[&-
M:VA[F8A>-&4CXWJ#7OJA:78QKXD;M[=X)]P'_HI2.X0HIQ+Y[<Z/_DHC+NKU
MS:SCKU:L,8Z25RZ(D:=]1#P_(@<:"?F->U_"V^.XA\--1@+:X?!RY2\IPEHC
MK#DBVSMN[C,27SP*=>LANQ9&SO# GA$+&D7 ^>)QF,05"@X7]^CA] DT< 3<
M2+L-='TANTX63&35E(MB""92N$$I3AC)Z7<_[>@,)$]U,!"GG_:]#0007M"G
MZ-:*1$BJ&AYQ'SCL/;ZSW&OO@>>W^RNU@N6KWR_13;!ZEJ#U?_B&F!1;"EH\
MA28)M D0-[)5\,I2PWOBED%F%VT3:!PR&'Q# Y->YZGY_^/X=M4\G"Q[:#B<
M/X"%[X7Q=)X"!I8-@ 3-FA!SC-CSNK"=QN(W#='6C.GQM6]/4?(Z[!/4(),0
M8(!3:O^F7MVZ<NCVYRN=V2;%ABXN6ATP=_0M$H?,\I6Z+_26K;'G7DY>J7/F
M]]\BM_TN'.A$?.M\_D)X'[[%<:JX?T:7/^[HZVR%GJ*,"?8\\MB?*^[?C^G0
M#OR_?<U5K!F2M$/2#9WPS&L'\C?QKT;_A;'Y3R.*KU!K6C8.XX>[SVP[@)0:
M[,]YL/1?NXH5(LA=D#LA0! 0A(#D$7!1$*^OE94$\8H]V?<8ZHNJXP)XX7Y0
MZ?/SZQ*DY-%?T:/SF-)^)XT(TT,:4AFB9<=FE%L#>F8<$Z84?2G&8D6[#"(6
MN0S[@$E)$IKT\X.RD/)<$72,>3OV7$R5GIP:U]C@_.6].O^D+PU<(A7.UZJT
M.(Q;C_+02QHJ>/;I]_0<>P12.T\9AJL]0A'(K^S,FP%'(Y;)1T9^.O<]C[OZ
M@/[B+X"3X&U4F!;$,'STG&@ C?&U1Y+VN"Y#M,A]Z>)826R48*O'SK\;L[[*
ML/Z2L*X$*R.@(]E#@WKL AK&((<&UWXL1G<L*XPZ%+X1X<6>]E-1E\=9,OGU
MB3(1UK%/M&FB1^*U5!<TNL[Y9VIO,(VIBTLL?'9VO93,@AY1">I3* ?4=J+$
M/3$\.TC][Y+5[R'&<LI$(9W @ %I3>)MUD8^\^S$)Q9]9J75NH__1]HRCOX!
MX,N:M"3\MV5;FL)HQF/>[<;W\3*<DJ_2G@\Q]IOJ F%I"5]/I$KQVN) 0>PX
MN?;6?K#% ^7L('X<RH8BR)&X,:*T=H+NCJ*$)F/$Y7I-$2PR1L%_8(_:M#_\
MG>_9C -6C/5(I)LH]EV$8,VN"@C9$35G /0E$V9P0E+=D3EE3XK]1!-?RA-P
M_EQI""$V/Z(I+2/J=0IBC,;U L$;3/A='P:11L6E*'RM#R-[$@W0__1E+FEI
M<B(:H/\IPW::"0VQG4)1,U^KF^&!HU-BBM6<9W0XC ( WC)BNYQKV"Z&6)97
M4_69R2XAW9%84M!5Y V(]3_;1]P?4\@D(EF!\+ 8)V@PEKE5+U7H3!P;",Z[
MTFTU[IC(HRR[]NT.FYL>L7G5B)TU&"ECT7\F!J\\V*]0)@YA$%5?\54\B#P/
MN^S5R#%COD>W.]<_4,HQ0.8!!J0,H'1DI$\O!6W"B?L!#_09=P\-S),;LT/3
MW)"Y9$>/## P7^5>WFITNL49I)!1!@V@[*CTV,S&8V&+F1U?4]C _@O6V9N>
M\:EU%N!4*F&MH*AC#T ;.W@<216&6L<@^[8_]^WMM6<[+XZ]M]RE$Z&B0Z(A
MS@-,?CZ'H<+P"PJI-R_?(N "7FH>VP(![H!^%NKD_7]"SN<7MY!N77:*8*]0
M&12C-")(!J2;Y^E0DQX1I4MC8WY=49NU- ) VYH3U@C,-A K8E(!DDU0- #%
M-A O.1"V/$>CVSORAOJPIR="H0="J-$%056K"O^[,)$S9<*S?W8Z4]*NYPD6
M1%HB)#9KPML@H#('R3U*G@N!0;]YKJML!K(1Y;5%TLV,'W[-$5E!P0E16E>N
M_PHV.2H312S],]!\0A9K9^U0^P(G!;R7/W_A+LL#9&)&)3%&N4'[!#M U,P?
MW':K]H/PCG!7[]C%&]-2?V-C5KAM0..\BA#C*) M'3 ]K>5B<EIV3H;LF%2R
MP:R>02D$[O%K.%)Y$DOV6G7D+ 0P"\\X]M8FH%Q_A.O44F1#'V7#54HV_.#B
M+(F$N(R@3ZA(/#DZ"K5PW,,,L%S68GOL"@PRBEVFKX9$MD*49D[ !9M@2ZH)
MR(![U<AC4.9=]>A9>]L1*:YL,(#8RI D2.5*'T85I)J8;1Z]%0TBMD_9KU(V
M']G<1>(VL81L]9L8BLQ+(!D2)3<V'BL9_*M]/"100F9T&O?-H&M,4F)X(9_C
M&H[8PY<&L/&&,=K%Y$:VU_7LMK35Q60TF>EZ=CO] )"TQKXP;FFP80TK]P4
MY"FYU4+EJ=7W[A2-G:AW)T>[4QM,/^XT7IYZQB(=IZ<T)@9"6P(XM(Y>A^%>
MBJ4<8 H?V/B;P)^Z?(.E&'8&C>&.Q;PA*:M+["YL[$3X'HOV2-S@T8] RGE#
M$$%X5^37Y]1'#T9E\B#ECJ<7-%P%#C;;5U7.J9Y([UJ%LE:=\,#,J1/&28L4
MT<;X2U(SB]R_/95H-VJN9T%2HPIM.'Y2]Z7@0Z$^>BP/NNKO5Q$>'.C2T7-F
M4@0)4M0P,6KR1O!'[IMT$FA,M:^%V27'['#ZE$IG>"\* DACT#P'M.MTR-,Y
MD^F^- KB(87+ PU_.T-2$"+Q"4,D_E6#%OF%"7>^=^4'W&J+KG<WJ)#KKC;F
M-!$56IAGN4<?IWM43&5@%A7.5IPG=U2>X$ 16O;#YR]/:*SM."_<T,MDN\]?
M/CQ]+W7WHWE7#M%S=?#C[E.+;1!4(^O(* F!">E4D;/HW J" ]OP??"(T8*
M(1BY#)!61&0+>G!M1^$S!PH(S&:SLAXG9TH\49MIU!1+5)3KLE?<6X>DGIJ"
MXH9CU7QB3[RI[GQOQ5\*RD.AEY*1W[\)7?4%H@T<96C>U-GB#":P 0KQL=E:
M!I9-MU;P*VCA\ ,X3/6;KX0F'BOX$?VP],W6H&REKG"%F9@Y;&A\69X)[_!@
M'<0'7;Q4,-FB?@OJ0+R4A"%P91*0UX9G,U^C*O/9=VW6IT'PA5)7EDK]7X@V
MZ"%5%W#EA"O+Y<K;*_9=Y_0T4B? "0HM-4&21\%'H8)#(S-%^(?)Q300\N,E
M^*-C%G>I]DN@9(Z#L926&;B+@#N;T3R2_BLB>IO9T22B#\-DVDZ7GB9RBH$0
M@O)D4\L4)I#Y&OAA9TRV_FE^*A+Y8,]^ X,Y=M9(S!,Y_D#&F N0S_G5<=TA
M8<LD3:,09;T9*_.7.T<'3%S\L1)CAD@9*N^CYW:(8R'3Z5&6_CVK]<S66E"0
M2J5__@<EWC&7+0=4O]E8R6]C'++>5#4#$?ED)UO7G/=1[[BXS19&_7A\&\.1
M4^Q.<DPJ_(UCYTI('S=?*[]\'M3E.O$PQ3QUC'WEY^/F.Z4NE<Q;BJ>8S9K0
M &)1E).]I^J@(NN\/A\4-#VK@'Q<MEOZ\&I@7T=]S>X9Z$%.'K9KW, 1\JBN
M2LF@"Y29,._''$:2//]M=&%M_Q32?^S9O7KY(KQ"^EEC8GH$"0J,/DT6E\&X
M2:L?"U@:_PUN>9!UCX:HAIYY/&Q=N1@37]K>"F-H"Z#$(E0QH!H<%.#<=J'"
MEZC U3IURCH&HS!W40IK44- 7#>OGNY9R'JY.6E(/Z9I./2CP'+0'0KY@MD]
MP-ZSP8;R2$00B,\HC'=G6 5!%>(4&5E"!5TQE3M&^IC8RJ(#-6!O=#P5*56>
M^]LGN*T1G&SE;SR(&+VV66^=M0/'!@?&1V$VH#8[N10#,/N-,69+/UXLB0=;
M7SE?Z=4)2?I%U(Z)+,-$=@U/?-7Z+GJ7.#G+1 ;8Q=_6 .<M^I:6C-*)*FT9
ML+-O'QS06GAV. <'L[[W/A*!)X0D+N)(3*H,!^6SQ(C\0.6K'[E'%;(.;PPO
M7$-XE&<O:/""N0_GZ]AA2<D@"/)E6/Q3+]E<C2-6TA5JDLU-#D#^Z949A5'O
MPR0I@90KK_:>W5<!JJ2>B%'RUD!W7+WF0,R():DP$<O<2.\8>$AGE2N9C=&W
ME;.%!]&MQ7K#%G4H.>KGYL6(GC*!X#0FFTR/-C^O01E+^VIGN1L_U@EU= \4
M#B\>)XE #DR*G3^Y#E?FQ7*RL\63<<&^#=<6(OIP:VE7!;!H'F1!T0&B]( D
M73@ALA.$]P+O1Z4?)\+8_*T.6#K@5 P%ATR"YT6(+1S@FWCT_+@_XZ<H2\!C
M)$#.'8U2P#D\KV"_?(4*1(V"'(3ZCY,LMM")P4R&8XR!N@"0>=\C,D]#&F2)
M0RO-)+S/^"E2D4D,\K&I?79X#-E#R+OV1!JB&=A.^*NGGX7A#E")89)E4^ ^
M\0%:(X[W/8D;)$F+&FT/XP]#SH (ZTJ@C!4Q/WJ0B+_=^AZ^ARX %9,RH8*=
M;OAJN0# JJ SL@ GS5]])R2FCH<\?Q9!8#IOXAC9S$VE+2D36Y"$HQP<AV <
MT/U'T\V&Z-E"HH$,9A)).W;_ VT%^S][:;WUN_7YRHW%-TQ=)EM3W0UE@P"M
M] T,0EHXQ^:^ :[2SD"I&5ZYCI8TJ<V E/OD"&J)(JTG-]"8?'<&C];#>HSR
M-9S)4<%Y,V13')*I=+Y0R=GXHL$%#9T-^ K8LU"D_TMT6KW>  EE8H5$IA9,
MB&L3]T=@,17D4<.G?C>3!^K15\L%+Y.NS_T2+QI!&7UHCHNO*L\9"O#O-AHL
M\"MTH-%GKV@"A3AX3NK&>)DF+3GCCTQ*6=-P2,;/L8!^"%_9:@\L=^;9,WOK
M> X\1:%W(KU=9\L^$C\A@CS:;-,-R!2 Q\EG^B+EZ5&0R9 WA[9^3P-(RTCL
M*7%?+>924]@7OKT3VV@>TJ\7?J%"N!#$\.BXRR7*,\YB.M%A+U-Q+E&CUCS2
M_5@PF:L1$D&M^$T#A\86\MKTRG*@4@1EW,ZE,=:I2AXSP>X"'_.H:LC0.!RC
M:7$\(8LL6@KA8^)).>@[SJ"N0S^6UYA@[43TAMT[]K47,7).WKLJO+>":+XN
M<,X:VD?G,HR<+;[+'D.ZWKOD!E._RR@5T-PFO12N:=_\6!4\!7A/3K$K^1%1
MO/M",-1A>&21FZ"!EP(JMV:K5;"G=A[5M!>>D*!*BK!:CXNM L=#P9N4A#EP
MF7#1=/6A"[%G5L!1@_F_UYY,P7-O'7HH?R5=\D%2AFPH27X?0?WHV,OH>#DS
MNV-E1KG?&DZ8IOM,33PE P0DT*;P_%.-Q/WWXUH2/2'>^/$A([,G]F ZM=8'
MV1 $EW\OC!)Q8QHMX:IGMV</CLJD.K_#H:H-BFEL_E)P.=>SL^N;Z^7UY8+,
M[B[(8CD__X^?YS<7EP^+?R&7__EXO?RK#J@F_C"^].R+[M&B,4*3@&:ZA/P/
M(\:&#M;_0I@I34S4.-(,=XC4^!&9.$#&XUF]$ L9-\%NL08>7!,<;P\>DSN1
M++?K%#=5NJ-#T4J#\#T>Q\6V!IF4ZXCY4A:N?K[R=QQ$^?9&5RP 5 2Z9J[R
M!$%MR,PC"F3ND7)5#.*G(P,)QH L7_V?]YX=4/O6<5VV==#3,%'AL\-[$UC;
M_BX&_YU]340;W*E2,100T<SQLBH6)VN#B$9JF=633VY4KC.Q6,#]L^!^*[A'
M;U(2)-SO>(.CQR;/V*U@.^X>3G*9 IF&W/N0VMP[<;O;1P*7YE*DEY7.MAQ'
MK:OKGM(V21HGLG7IC!JWC[I>T0/5[9CWXIL<JI0F2!VO,!DOFAJO57J\9$)@
M]%T.^7A9W^YX97U>XT [;G5]]!P-7J_VW_=AQ(-3_9EM(XR4Y0*<P;5W;NT<
M)D4ABT]99,P'RF&G*(]YI?R9)V+9H4 ?T_KL_OK\I!@M-(&_/"&QB@[0 1$7
M7&G_MS9T*4F>"X<J<.AO;CB4!\ 0RTF3GE=B? [GDAPCIAIR2!Z0HU00V\A@
MJ(I__*"6/),VO.',=\KFPFU1;+[S4:5NP(BWH!O8TDPH!C\$2,-H;YE<O.;I
MR&X1BH/^[+^"GDS)X-G9?1%;(W%S;$+G%[<GA#<I SI$LR>$-0S6?SN5'55;
M7(!POCNC'F6=ZQ_G(.B1#X+B]T?"27F*N20SO19S\R#,I V7I7.CZ1:+(QV5
MZ$=0'3=FZR?.E@=XH.S $B:%7)3CY/G(@IS&D:CI$%6@.:9U!^ %V;FT.&R?
M?+='BB30\W,BD^UM^E6EI],5X%Y]H]:+G)ITQJ7_Q0H0C@ST\K,WIZM%19+A
M5I2_ :7)=UV](%+]UV\]Z&K'PLHG9!9%@?/_L_>NS9';6)KP7V'T;$QX(LK=
M+KOM=D^_^T'7LF952JV4U0[O?.B@DL@4VTQ20S(E9?_Z%P<7$B !$+PC,RMV
MIUU5"8 X![=S?<[3+B<4Y F#MG"?C!?NC&:KP$H$'LK$'W,_S0]MZG717ASS
MW__MY^\__N5OS/OD"DSJV1J?U8<2*?4Z?)VJ0+8/GY;Q8^'KQ\09"6(**W2(
MT#R98(RR$JRXM[:"%=-RM,GT[D%H421C$W=V,>"H7J<;L(*1&G0<(.KO%#&&
M6NL&\38]0$9!AFCU)_(9XAE(441/(CYW?NR%="825A5'KZ'W[KA @:-PHMBH
ME#81Q8R-SN.H)O$QCD*CO(&;")TRXI2$?CX^)VG.R\,-$F!*(TK)N&4EO,.B
MJV(D$8BCMKV,$$<B')Z2-$W>P"TV22J",F:C5W:%)@[E<*BI!W%'1?S)A,;7
M2WQ^7WT:U<7Q)A["[/<>ZF,YI(35,8D:R:6I9<*2CKA*CK(^)1.+X'/\JK&!
MO7+DB8H>#DU;#9A,"!()Q]=^2A\ZT5F(!_WA\4NO)UGME_>^P>,"2--$<#&#
M4J;!]ZV3=U!4-813D%J=4Z"(D>R@4LP'D,U>=;YJM=M([4,OH(GX^)IG4N]A
MD,9.59%%)6IC,-Y4WNB>SG17ISF'A[SS7 5+$Q]CXBB+P>QZD(><K %4E-Q=
MO,S.]VX34K.L,C+^:Q<C[X?O" D_C)X#L'V)DCWBT3_J.LQ8* 8='P7T&B>;
M1/P=HG5X]4U>3:7? _(E3LL",U(%9C0-$I$S?)'0?9IBJ(H)\;K>)([JCE4H
M+2?!(V$G.O#.,#,:B8\GP\ :/)&J[+QX>$>']L%ZSED<P'_ *_**A1BPO0\6
MOT?T*(BF(G\0/C%70-]H!&OTDC&#(XBU\QSWRBDV3I8E &F#LD$,VFQ@"HE3
M##V-"7<XHM@^/ YB)-5*2=&!$")+*YR4?_>W+W^;@)@LS?^ASCOJ8>73YU6-
M:N@;EA;I?9HX*TX!5FKS;)]%^+8NJGGS=Y.Z8>#)[EV0KU':87&* 7OG2+*
M*-W,"_@Z+P^E#24@9&F%GY&14LD])@*\+=85K+">KZ8X-A :ENA?I#KEN.[=
M02GCUBZ1HL6ZAF=V. 1).7X-ZS0A;ATW)Y):VJ2J-GYA"VB*TL8X)$(=_V91
M8)Q\E]Q@)2A&^>E9K[#1^:-!.YR\WCC9\:(+'&S*BS4UH@N3&,X/GK$B6D\U
M._VAT1A5R(.A:8TP?&4Q-\3#X9)7>65L5W'TM/9+M$9I"G@]@Z>UW"7QMRM2
M'XI]0TAMX69,[YNGB?)V!B:4;5<^JC=G2M+0:RC![%K0-Y$55:Q[H8HVA0C3
MY7.*NGH%*X4]-"&W),B6?.9@Z14/Z6<?*X?<V_+S^('#4%ZD+V(/&63"+)0E
M6CW'291L]D3?J6(3]T-X*<9FRE0=;7BRTL!CD"GCD+^B*'F!8GC%I\8FZDL&
M.C2#O>XJE.!!1/1L*.681.%J[_TW^^^$8G4_@L3EJ%(UNN4^B0&MCD*J04@>
M@Z_S-ZAK329I2 _&+$#Q\*B'1)"BL*)4@' RL+^R3"A%&*8F,(XUTS?UM,0M
M9J:U ISHL.C2UD MT8.FTZ]YV"2)HLP(7DAVOA?^UJ=LI&AT*-)!Q2]] "!.
MX1_&KI](#.98CR+&VT=\)/PT3/K8_=D0$P7TJFJ8D@?V+"Z@,?;#5? 2EZ^P
MAS#! HQ%M]-%9D] >?DL*,ORR@P0_B[(^L"46>QFQ/+04.RVTT&NY3F)KXO$
MJ17[S+@V[C%HC.27\UHJSORKN O&OIY&(U$E(<Q()T E,+"Z_=7[ZAG<:7?^
MMGL1/CJ4Q\?R8##7)R_=M)-20.V49:V"B@LY(W^W?Q*5B"=BA8(:\&;F?1,R
M.,[Q0O4'IE*3 X,'KJ&J9O1?1K8S#TU9U<IL7D"Z>*.;F!7B*<OW0;VJZ:FD
MT0\\FPE-5EQO</*D("$CC:,G!_(,?V;R[7K22CB#JXDJC?:>>1V((BF(6$%$
M!1$4IRJ<"BKF=92\L5+:O2R.1%V%P8K"W%,9& >AHJ9YBZ2,#]4>8WV;EK_L
MM0@P$%'):"7-J5:@__PK4F@2O<(.HB-.E]K[V<^)K'79PZA;CB8H@E/5B1F(
M%-F30P?R@@GF?^V'*0'&+0.O>\?IP9BTI*\06YY-&EP^*%GBXI2TC6X6W#UE
MZ']V6.R[PCIBOUNJ',LC@TUV3PU"A!P5)%,RIG'RL_\>;G?]"C^P,49G>._Y
MRC<0&6B2O.W=*B<IR&=Q\  (/2@H*T -E_TB?8J9!LG'A'I3<R7"3,$&"=,C
MW?@Q"[C$XO #\J-P$V\G<$DU5?#K7_E'J$QX:,34%94J7?,AZ,D(<0_AYCE?
MK+]DO:*9:]!X9-AOD_6WX,\>-:!Y%+*D(U;0%I%* -]Z*2=NETT6U[Q[>8F(
M<\V/N,9V4P*B]2TC)HSNE?J;\($) WM&(E46/ 1ZA9<"=#\5]=,$E87XRBAO
M"874VRN$+JQ<0DK!_D )%:_;%M1.&B(Y/-%B43D1IVR:[/E*O:-+*)74%V"!
M#>)=W3\>R/S9$5.5]6(C'@@A4DC@8<U<+.NI7X>)SH5<#182_PJG,ZL)DBV3
MBR3.DB@$FU#07QL2/PA/F!1+P#\*X=+B9V?(/9J.-=K\R*(J"_GR!^\1*TOA
M.ESY^!_YC]PY0:-.^+_2NBT3ZB']]2>')VO4CR:S)[+J.]3;R__QEQ"+^^GJ
M>=_+#2K(&\6 9#_=G?U],B?HJ(2J#:EU:D?'H"/Z5\\"7&2,Z6IN]9ER_>BP
M@5@ X=B3UQ26OXD9X';WPO)L,90UY;^!KWAA_!]>\:$)J\N/1[.XF@7AC-99
M2)4?:>%M)GNM\D#W-3L4S[$DPHQO:B!Q/G=)S&$<+L,4K?(D)48Y"E0U"-@/
M)%OR;WC\(Q+XJ+<EWQDWMG,,2OEA;:9P$C2@,4BLILV:Z1S=+*;&&"DA4\[W
M91,68T9F1OY'PNKOFM@C8K9(\"+"+."R5F*[4,@Z\I^)8?WGY%P-^N=;4NM6
M1H_T9?9E0KL7QCZ?LH_\IU+:8HZZ,E?O89:C>(46ZP4I5;E,KM[Q/W2UGVA+
M[!0? O6-?@HT6?HQ[[_S%/1<_"Z-%U(]"1L,_@8LEB*1"4G!!$0^-68T]E6<
MA_G^.HQ0>H'?^TV2=BX[1D;RR% >'\OQJ4O5LZ><?Q&:Q[(&F!-Y^-Q?_H%O
MN0.]_,3XT9-C$!<UTC5U_K;HH"]%YY#@_=VGI+01,X<5;H(BCV[H8 '\P(4$
MS%G\\+$S@&T)<1H?/&DBQ%(A3@585+J1RMG,%512QB7>)330@^;)#A!CR0><
M"#)X*$IDT9R1X(]* CPJS-)RC;>!'P'2QU4<0(AHYVN*&F[H>!3$9.Q8UR')
MD)^2Z6DAFA^#%J,0BZ)[ 4PI%TD4854-,J))VA][%S*.'<5#C 4,*7P1O(;)
M+HOVCTD4+)//N_7F)EY%.R@:S'^$GX0^)-!K&^:Y3V3!RI?I& P>F?T["LYW
M!>XU].R;0"H@K*4UCQ !?%J5,V)IIIP; LI5D7HJ%A=Y*5A"ZXQ@V?/SE^M/
M@!Q%V5*TH+^+?>%N30O>*"?#AX.FXH]@^=OE7LP SNDHJ/C\N#:34]U67-4O
MMU/=P4B,E!?5[70A;B>&#:<"^_-*5GB/XG8JV%&TH+\_5+;3@[2=:I,1MY/X
M(YX.9@[!R_^-X.7+VVGJI/)3W6 :6$BG=MF9_2X[T^^RZ@Z;S-U'51P!P"$$
M1''B @P6\0.D1+/PY+L$JB+0OQ+MX#:,T0T6=[LZ;TI/X <-H(7'9^(!.!#_
M./46"K/QJ++RWS AC\QH.G?I'/S3N%,9#\]T/%R(/#R;GX?&(M1?X@!+AR"D
MH^#J?07IN7WT&)NZW.(G/?K-B52=<3FAA : 3_XGV#H0GMNX>+H<@E*TJ-_C
MD:03,X 'K8"ZE SF+_A+8OG2<47!T6@M]'%&H^13@2](9WX2/]IHM,J0@S8$
MS^,6&K%X$]%M1D;B'Y8X)7 P(EDJTH$\$&I:%BT3UVNBZ%$LG*;P4%PB^M^;
MN#]X-Q_3^X:/^A\07#(!;/>P5"F?O N%O>(PR%%LRN:5FK@6YG62HG 34]O>
M:K_$YR.+R-G[Y(?Q;?=*UV5M3_8)CW_#$S[BP5>\;^ [H\-UCT>RY$9<K[&.
M" KEFM&]XG3GY9<<<64O4;H-X^[F[;9._>)[+OKU.S.CDVL_YU\;/]R/1,(_
M( @!IF$N).L-:'^*P@W9C_ &@F5C&>));1;K1_ROV=HGEA!2^!:,_#W /HMP
M_&(:GC /KYP(K0I%C"QT+B2H7YC-!X_,AW@=)H(.G9>#"OS!@=DXJKIQC9[2
MG9_NEV]8Z-I?05[M\BU9/B>[S(\#^J_7@,?26^?@7_*^_YF@ZO]XP'15=.0:
M:>.JP^/2%E66BX[GD<_@O^!7@GV(_P*?&ETW+B.*'M FA.CD..^!J\FBB<JQ
M1L?5'&+R<J[FM#10EXE0O*J$]8N#RY!$1.80)C( %J^8,>8+$-JPZ8+R4R/[
M'T>BE=LK.(V+M003#B9DX1.3X/*.1:J\7^4Z;?*J3DWQ+<ISXLVC$&V?\$V'
M#Q#J!S7&!B4N=@I@MRG&/0QJHF,AI'*AF @:'>CU;@<O([B97Y(TA[W-DVV[
MIGR0 :G/E@]9I!D?#C62;;,@*27C@DB<'1Q%\GTWZS*55WIC\D6FR[X8JCZ&
M3=9*9DQ;&?M-F)UKRGSY!6.=U\2Z\[W4<!;65;$D^H8+UX$D)HWX'8P<R?A8
MHVE\C>-JBU+  /Z4)F_Y,^PA/^Z90\*'].B8'AOT0&A1))5,3!#?8[\BT*E1
M<(;?#7^#^#M$,>X7NSS+L6C,XEI6'9>,?\-C'_'*5XE^QQ,^]('$JZP.FNYJ
MNL5A4R-+%/Q3W_IL,>-B,9]@=%:ZP$O*KWH!!>G,G]%$V8KCKJ[@K.NRM2=R
MW[&4U5X )CQ%=RJLDEYS%D\=&VAT60U6]FE?41G[ 3O3(3U!79P8B7Y(HB29
M4D?9Z,Z]),L@1 !O"!2O0M0[OA4&]*01IPVO'(P>R7(T+U'*DLH0?],+TT=?
M.+H<^L HD_Q9C#R*22O$0GK?>C&$:ATDA;+ <3L/;=0HC;8^/A"K\S#/;F\O
M!K@#A0'=GWG5)2*,B<_2[84WLO=C"!HBF?$>#.;=XO]W,4TL[2!$5)P8PI"P
M#',$QXP>'J2("#I(.LV1/XI@'_K;R#4PE?4)+I(L+T2)OC*27)_A3*C/ )_Q
MBN&9D!&.*F2,3W6MDJM#U)=5?K=;B#1*5K]3Y?1LES\G:?BOSHC'=$2*@/6!
M:[SEJ =$D)3%3JG**%5^,>84935)"6VYX.1]FFQ2?]M+D:_6T/38H*-K]D/3
M4X/24A U?N@WS:UBY>K[H8[RP3PVVF3XH\-0(:['V#EG=0_9)7K*;V*X:BEP
M]-!0T3#^X5$3U0FY3>+-MR##$)(\X2M39[QK4]<A_[I(*R_RJ*7$]YZ/\KD!
MW8) 5HA $R7\A R3,:[*,R5WV#8QI<^3G'@1+Z',;[^6\O"/ABG4/T$"G[D#
M!VW"F,11/_D1F#F.C-:KF*=175%OS<ADEL(;_@B0"8?S(<Q^/]\O<;\>&032
MB!X,Z<&($Z4 #$B/+(PJB1J=&C][9J ?4)#LU8_@L>@)]4P@,@I$%F'<"0M+
M%?@.-_'++L]NT2N*/O:+4A?0+NB@'SPRK/=Q,I_-@%3)T:2$C/$!X9[R$E6O
MYR8C HZ(T3?=UN)H@:5XU>,V*[$'R^$FNLH&(J3NJ9"I&;W"P@J+?SMB=EGD
MSRB%D)H4/:,X"U_Q05GA1Q.<7G<H7ZR7_GO/?2=\S2.?\Z3O>?2#+)'U@P<X
M_U@PQ]^=LJI>H6O<):2L  J($LTJ"^R)*C"X%L4@X#^18.?Q@;Y'I5&A6Q6?
M82&"_$,S%%<JK[W%6@S5%$R=&9GDDQ QVO=5;T!1F'![*PXXEI=[+[;A'(-B
M-&U0Z- TBH>VZ0H#DL<MX, "M19XYZK#4/K6XBC"LQ+\"2]C(2E1-3=CY%(<
M@Y/)=BHC;P$)]0CL\G+$S6+LB)N1J%-G:9A7<"JHB'MF?,9G!["[P+44_!-K
MY'V2:TI@#*%F%ZN3X97#'R2)LBM;I(^:(SR_'/L@"90NU"#X3X]_Q<.SV47$
M_4M,BD^[+(P!B@[?X4_@^AT1](,<3%ZZ9N@"1T5)'.(QH^5)IJEI-!A%[. 5
ME$Q?NV@P4J3< A4]TPG@E@K8X!)Y*U5L!C%]8@Y5?-LO24QL;A:,&E/@$[1T
M=NG>)U$(<:?]%7$VH,='G% 'H8N&U?K!#%ILMX*E8!:S%KD[GI,HP-OHBL#^
M]22(#O+!.\OS-'S:T:34/,'*8SJMOC@<97*<>SGJO__;S]]__,O?/#KZ?XZ>
M,4B0Q1;KJW<LSV#]^P&?[$5,D+ME0SZ)3PK!@\0,_?(_""T+I&R\]UZ2S(\^
MI<GNA0 S9"L2+;[#=Q<-;$OBKA)O"8G&I^[!W $=&N;SH>8Q 'PC/F/6A*+"
M2_\H]RA!OSDM'B&&H3^4Y'@E/5]7S [)3EZV"_+GS+1\BM7ZRFM3JIFS1V2B
M?#9*?R$6X><0R*_430 9IOBG>$-B++'>O.H9V43&/38"I:M7$(M!T" [2_[T
M!R8A"E^GJ4$?/#:!4?4C+-6E.\!))TB\@,M/!68:MC8TXCC[FH?8Y\C^3PC]
M+.]D.N3QD2DOI69",?\,"5IF.@&C>'(<\I$IKYB^9?)]$_D3^''*UT1Z9!2/
M"B"N]0H.KESU,-[H<<%L?35(7[<#A>%7(;XF VX;GK+BF!I@VF['3]<<B3K9
M*FQ$9IN 2"$3FA9][(5"Q >9#$"HUZPK&=O33OT!L5+7V6)-+M_'YR3-(6X9
MHGHZ9R+Q00G2-+G3R;AE0/2!T*4$OY?)HS)*1LB#E#+O*4G3Y T0?T;?=[NG
M#/W/#L_DZK7OF2F&\LA8DQV= 4B02YO-0\=]RHJK#)GL50PZ6[[7L&2)"U72
MQK*^&(K-M,E?Y'']KUV,**KQ(T!YUU"5"0CR($H.?,G[_B\$+OKG<>6A$8EB
MNY,0P]"@R3<(3G1>P8FF"-*3*"\CDBSN7&D1QTU-8/[JB])=#;: 30S'XR;
M-(7KT"]JMQ,A#I\HN8(>_@UOP4"CV0D-NV:S<*>Z,$NOG*8GSK.HJ\=F6BM2
MR";[P3-HAQ-HA0? ?94JS6TG)\R6:@*:(N*#%&IFFS,4-Z?/"F>*FU-$0?'Y
MYO3UMJHI;%0E-.)U&#&HM<X@':M=RH[>"JJ(1QQ0S>7)*\ <)YAY(;)2,-\'
M#EE<NHA[1U30D;UB:,G]/&6XQ/ DRI@\E,Z;F%1)F:+V4B^?$XT#K-<?8T9"
MT;M%;?L]LK6&\2JQR$5%93/1XR2[M>C43WLA1/<?Y(M0MRI4@W/(J\H*#I%,
M5):V^FN8/_.LU)ZQ(FQT5O:;YRB_A8"0R[XP8<!(%9&Y;R", E_ZX&B1RX/F
M^.U>3E* <:CY5PK:\"5YX4LR>M".\M2 \(>/?#]L$?5Y8379\66QQFOGG451
M\D90!/'SQ[%&(?!O,B22$1A0R:"F7* 2]0%2(V_1PZ='?-<&VJ,.!:$0KPDH
MF,D*,FA9N\X6#?OX#/)A:L2 3POMT?A!&G-PJ.:K\G)*:TR3:]<H0"EFQ!.*
MT7KDK">;@GC#F6ZKU?Y&-M^.3!S;Z?;E_B8TXXY,NJDZY6CFW)JG>+$N\O/O
M$^;8[YD47+B.\3DLD__YZ!/*N07H9IE.T9&F$KY32B Y  +$![>D(B3C'<+T
MU1BJ(R:GE';!QV<41<.5>2'#35>MIL_LH^DG7NP9L%XSBWV_>X@Z:9BC9\)+
MIS\!M?AC1L7H^BAS@]RGR1IE&;ZL_>@:H:R?*LJ=0N*H'@P[F98Y+%ER\(!
M4X;2UW ULM<+?W&%4)"!T4TP3S)5ZGH7!WU=5?P+U/"6EB;% CUQ#5\95^P<
M@<RH6#)*'H$Q%"VFG#PR^J%1)Q>"7Z'P):?U+#7+-_X#A/4Z[H5=D:W5RT'(
MWB+0@.51)W,3#D2/0C*8G*CB8ASBG9W\A1WN<3U[?+Q:/HZ_==A+4[@Q047:
M=;8*T4W#<Q-*'RT=]5"H49R#J4DR%K'A$%F7._0;\M-K/,#@E8CRQ'M"WKT?
M!A\\^(@'7SE4:L4%_>RGJV?OA^^(,>.OHU?O"&/$ 8:N_14AB".2@PGRDM1B
MH#[;KL5*(/6@+,C&OP).; ;B3NRR]$O,ZWW(9*O W;V4)9VR(N9K]LWQBY[%
MFYP%S/?$"9;!T#],"1(\!!5RT;8Z*1,'R?>&#ZS$R$\A1!#Y^Y*%?(M B3<$
MRG%+4[LA>N*1O$8!1 &NT4V<[5*X-@>QX?/O0S1@650[+&< @1XK"/'(^"2\
M",\"_S.;QKC:U^3\81NBX(M4;%SX,OXS#7TI/N[!U[WB\]-X!B;GCWCPFYD4
M-C!I3!'QDNWTZS!;^1&5)5:=95T^FD>'XT+2:EPQ=R :I$6;G!!UY@Q!"A\J
M"X@CGV?9;NH,H$YT&--^7O""O,*HWO_ZXW????R;]^.'[[[[#OZOGA'T-RA#
MB6_C20@7,PCAT1\T)U*6(IPG19D&>5_0$WMO2?H[2. K_R7,\3EC,NH$B?M#
M+9/HL#.MU<AA+^2=4Q0CZ08W4)%_+A1U>,:5: :CA)TB9<V<J6JENXQ;Q/ES
MU-!=+B] M;1/BWCQ#]X5Y ^M)[)?N,]%L1A4*SZ6E:.^<K,:]7D*B&4\W4^$
M2^ENM2J2!T5TE&FL5@,1(DK>*FK&1U5ZA0S+(!ND<&<QVN25.P>B0Y6S&_"A
M#X0&.3+^<JK9U^[4RDW*J.F=^R3?>ZK*:<6FF\!J"E:1"P#)39%_D01=+0@P
MA =C>#"(JY.5,D@FF7%IXPB3E(H+6*^(_"PK(@+*L@27*%NE(:D>WWEWR6-_
MH,%]*?,%"G4FO/\F.-K[*2'2QV9")5)&^L#H3B"Y&LIBEY,J)E!V8@O(Y5W=
M6F4)%.:@%$;^X-&Q#XTVN1IAI<:+EX@$^@=)H/R"U4@<WWU<($3T$X>$@283
MA/I/7M1)B$XP"]HGON9>?<B9X@8E<./V@_0LABPC&J<R3#%94L17&0S>A\NI
M(DK/I%@\HQ)I0M$Q(Q ?)+E5T$]*<$GG>D<0/\?&$3)%TMP2SVFOHWBK"QJB
M8T]V+(<F3WJ9S32.;-3?;E$*V66?_?1W!!&#@X1GE.-Z6S[PV.Z)@2@IW!,%
M!<6 'AWQ,.BHYKW7R7$AF_DLOZ9YQB1.-4_2O=1X]+1O'Q\XENA<S*#:R:GT
M[X$95LT"IPS(,>40JCAN"%"88FKQMY.4&-9)):UK"+A$I-9N9],B#.N1<0G*
M-QO9HT-[9.R#(JP:^D8)C B!\."GC, U)7 %WQ@YNFU@"J4X'QOR#@86D2L0
MM.D!(+$XQH&J_V9 \,<RG>ND.#H!K&:5LZ-=1D7&<+KQ\73)Y#%WLB0* Y]5
M6+C'?3FY E1#@;'0.TE:^#:8@86O$_Z(WY?Q',HI3.1_() Q]\])W ]IE +D
MD'$F2!WL.VDYXG^JF=< '$BRT,WVQ0]36/)!D#18.E0YZB0U1X<D24J2*<G@
M3WZ>0*%R#EE!X"]3@(OY-EE_N\O8?325 W^(J_L&7P3Q)H18MP$QNC_T!^G&
MMU*8HV]OL?(!6*/%+$^$N5)<\XX6-/=>TG"%]U@4X5N#[<;PY#A3,2,PB+EO
M^0F=D"&_H& #\54H"S>4'ST"@MA@GC#:1/% 8(D):9H)Q#Z0"*L-BJ'2\F!5
MCX5OT, '\2LS%4(F&0 TT:%KLAL98JILB3X3KD:0GOL12:V:H S*<-,70S=G
M(("9N0B41V$8>WSS7\#,U1,J+Z ()5YI)R3&P06^[&*"CG<3!^C=@Z_17\;.
MB1N1:!DDKRWE8Q.\!-CO7;KOG5K%!Y(RJ]R?O>1#5Y$P4;AM#TJ4&44%+2PW
M[,<//__EIP\__O =>8]^_/#C]]]]^.DOWQ>)8;G'  \^$L"#'VD$,EJ1+<__
M]<\? (WGA6[<:+2L>6*P^?+(@59)\CX5$?SH4P(G!5[60?QD7QXQ@SCP;"A^
MR-L47QK7ECL2H>Q8?O$>&;0NF.*E+WCE)Z;).1Z)4O&"I6$PY8C31;]<A^\H
M$+$K>@>_@%+XC@(9G^. ")(SOHN0GC4A*A01.::UF!2(,?UBQFIF( $59Z(0
MLF'IT@"5$JO/A-$ZPQ)5C5"L$.-]RP.2QC]8^,E,7E"P1*OG.(F2S?X!!+Y^
MA<^+4;UR6(^..YG,/#!E\K51)V_\](C<#V,4\&(:O=:'#^85I3FF6I5AR) C
MS2NT3("7\.*'M9)V/#^%F-UZK0[[@*HR(H^DY=" $ZW:>"17D"/LZ#XD&ZO$
M(R&GW2T[O\S?#V+R_2DRNQ(T##D(F0"I,+JYQP]3HFPSDB52/Q,-&@4+8!.F
M%[(DXN NB5/^UW,_"S-2,*ION4*8"+4W>.RS6YY3S+Y%MI3X<5:.>\J\IOG9
M)87+K9Y1L(N0[-2_B;,\W5'3.Y\2B3(L.4R+ZC(NDDE- <6T3/V8I@I3<-"^
M>%+E> QM]!"(4 )*349)AB=,#&SX,\S)>)\FF]3?EH78:2+4QWYQG/@3^!;C
MW_!>Z$<^B!79QTWX&I%2T1GDE<-[]YS(\@M3Y>W9Q.U>)RD*-['4XC+$'>$=
MPQ?'Z)'.; *U=N(DG(IT'IIC<MG:%3GO?_WY+_B@;';1-*@W@#I5/A!?8GP(
MTQQV*L':P#L52\;;<+<%V!!HBH4=<+N1F-H[U/G*QD,)[]('3_BPQ[_L?<.^
M_1_,] Y]V/=IS/0'[V[\8)N).23N"9$K 9 ?<O)'#3F>FG*EN^9$:%<XW88\
M'!/YZCA\:7$S4G&XY_8O0%%I92M:#?!P2(DJ5 C/'-=U1[R^B'_I%BNW",GV
M8P ;9,HN_+&GNY!^H183F9<?(7\>UV$X ID1-X\3\BJ>#4\8G/SYT*@S.#;P
MKA07KUS.,07SSV$<;G?;7J9+-L;HALG>\Y5J*M"!IHCP@SJM6/WI/V<Z& T)
M<7[B47W.DYFNN?F.86)A4:&>=U]&/O8UF!7&0O8Y(A>H !;$8,L)3643<4,%
MNF"PZD^(,3&HM9GBE G(88X9]3G F3##T^*O["<L"[;A@4<_:4$0TD BJ$($
MA0L(;G:O"[0<DY0V^I:4(Z!PW)-=IT.2)5T36MH.:LO2&TW\0;YQ';LAZA?P
M!Z_ZAITT_Y6>P)=I&/,I28*W,(I^3<,\1_%BO68I]<OD$=^'BS7GW)<X[*H8
M\V]\\-A7O&2]+K 1\L2#+X$KJ]B!\+&#IKPB^N^R__3X]R".>!<1/8S4:'WB
M1 <A%($) 3OI,&E7FO= J76+^!*',ELFW.Z/[E!>%CI?)B 7W*<)X-(&Y_LO
M&=B)"@7Z#/P'].3WK+Y93@7.03$9L!?)Q>KA9R)K\4EY3WOO&YB7%\;_(=@M
MRKE-6=33 9;*#[W$U[3@:XSYRHV,"?D;*=3U(C"UM'#YQ9Q&K]U-^51DY4.R
M.+Q1O0#,BM'@:F6;B0_\P>-I56/#F!'+UM_A;,>;Q;H4D(F&#M=+QZ"NBGF2
M?0%(%81P:@8@7QG7,#D"@6P5&PF;)H%A! +% RM2^?AE_$!K, TP>S^^&?H%
MPQ,S0V'H+X8["!HD^S A9%Q FB)%%&T($'2O^XV.,5WEGEZ3ED, Z,PG>%4@
M%PY=(OI?_-["&I<>AMZXKOP+WC?\&_\!!0SI5A*<*=,9WT:DN7Y8)LP-&9,N
MP2?=?D$G\CS?HW2=I%N066A^>;_P]W(TCPXW79S[,(1(0>TU:J92(&E"(X/A
MH(_18$@2A<[HQR(N#+<\S0(EP8)MXTT9^ WJ3AJ ,L-KN-[[67ZY0[=8L[W!
M$GC7N[7XEA I_\&#P3T\NO??,+Y'/C J<M=5G$,.6NF?HSM, -#O&C](!O9$
MC]T'?AB%T0^+-O%8SDR@_N70HX*/+QJ8D> =$1G&99"[</'X3O4WFQ0,> 2R
M\ &]HKC_328/2U59,O DE]A8Q,G(L1*%BVDII#"?D,VQ6(N8CY"$XH-)=;$N
MB^@MN[@HJLB=\"U8QQ<181*V;DR^!S\EQ1?'-;V,2C=WC1%Z\:I*B)H *T&_
M S^57V+I20>\W%+%/Z=H+W1QE@&U6'./V5V2H^PV\6.XJQ5R6I_U+[QRL,55
M<MED=+-E9Q/"DZ EONC_]HTL*HYU.3P6.&D-L1EJB8U#:WUO)_+>'C4Q:85B
M/PV3+S%@"87K$ 7];&!LO.FJ5S,41N(OA /_'+[T4\7YB)XTY&3J^( $2;&3
M2JJFEV2+Z';$HQ/N4+Y8"_]<7F+#"OIE%#P22JV"8[-T1]$?'R9+>IZ6/Q+"
M<)'9(.1XD^=DHD /^FJA(6& V)#S@0 -29.$5<@(FQP :$B"9H?_(6(JTV\?
M=T\<F)_4[2"Z-"VW,41=D@?$%!$H$$ 5ZDS\HJ!5![3&QP252D8BO11)"9W2
M\$0LIY845LMD_)(S(Y&I,I)(:YII%G7"3(4^H*&R59#A;4X#+]R7 D6."(/:
M?/%3[Y4 3?RO/W[WW<>_>7_Y[L-WWY'_*^ VBQ3YOWG?__G##]]]_^%GAKF)
M__KQYY\^_/6G ILS)/SH!M'Y-^_CSQ_^_/U/'[[_*VV/__K33_#78BY"&5JW
M8$"'6JEZ(;:O:S6=;'FU?8F2/4(LMG(TDSK_3A%2.ZOM?#BJE4^ 'V%]E]G)
MGU",UN$<<10#$MGL?#>M[T3>=V;-ODZ3+2\!]6N8/W,MMR=0(+64DX#@HM38
M&Q[>*[3H<Q2OGJ&<YX0@@B-0+.<*-9(]>FE91<)QH79@=9@$*5WNL$K\GC\D
M$1YBLWQ#T2OZC*?[W/46HU_]4,VUEA3(/,&'FR3I@,G@/??8Y[V/WWOTXT?&
M&REA0'S;?AJWFB*^4?8HN$S]-T@O!_,Y+P(\2%@N&]\+\ =(<KD7X4]X:_:-
MD4M%#DT<=V<RHF!@@@K@P=!%]>1I G(')TX&Y#!2.!,.\N!HU0="1QWEW15D
MZEXE)^:AI !R/-\+<)/7*?J?'98Q]CWJ.@G#><5X$U5V&H$JZ452D3:IB[<2
MCC,(\JB(HJD*2YH>970\DG7HH6XA)Q@*E(U1CNR R*G:W/0EUKZ!0 COXY]'
MJY)%Q(\Q*]/<S%*,9HP2-/,6G1FMU(R.K&FR))FS-NQ:RZ_BF Y'M[?WG+;:
MC3S^[24^1A0.@59J)85:*U'_6.SP_YFD%Y&?]0JTDY\F!BVA*1!+$P$@99=\
MVR,?GRH.ZU<$=3Y0<(;WOK]A]:$7Z\LPVD%JY$ A\OPK'OL,JQP-W*G'D7_P
MV-</G'8YKO8H*!+4'OZI;WVVI'&QI ']G,KC$>P(8CN6RSQ:(7/4A^,1(.)1
M4%1F+*,I.Y>"K#SQ[ M"\4<AJG**JI=CT<GOL6.EKX)D;21R*J"Y,D+K#N7]
M0IJ*0%\QY<I?YY#A'47)&PD+6L-C@PD/:='[R<*=AJ17UB>8\Z&,3,-$Q>,C
M;@]*D'#'SD:0RFGP@&+TYD>]L6D5#A,V]*C(M".19@:F1>\YB@-B?1D?EU;O
MY24!$P')$*0;2E7\95A??O')TB7(\ETK &N'S@TE6!1$!_,(+X9$0>B>T#YL
MZ_>;Q/EYJ,36[?SK'<D5VC+L9GJJ7]@7QA6"I*#!X0(PY7'GB+P<G+*JD&X3
M;CFN46YP$B7YU8UPTABJWM#TN8<P^[T(=>F5&"0-Z\&XGA!#,U6RT,"T5816
M+8&N7)LW,8L,^0WYZ77X.LVC\:$(EH'/>O#=HV&(+DSFA^]F2<WH*.TL'7"#
M#TC.(5-BE]%T$#2X$%PQ"!WSA;N4F#"/6S^*. IN/X ;,E2!;>SXU!7X-=/,
MOP*R1ZMAXI?B)B;05O#*W_:$(6%#>\78GC#XM% DZ"D?N 0&#'D@TX[*&4]=
MHX0H%9]#+(,D,7'KU(J$]C>+__#==W_\SF,?\73%0@^-PJ@-<=.X-T:@LJ(!
M4VJWC%KBEU,4M_6VY%NC:<(%'@:>!PJX]6V .N]DO,+0.&4B_F"D2&@>E!Z2
M&83_."8=9/\IIM\ET+*RYU3.BW&-+ /145H>Z/PE=)Q1HV I%9\_D8@16DY[
MD.-_X7WV/GE^.>K(ZS  !7P1JC.?YD8>@@+)R%,E8]39XY=CA5"00<X7*X,Q
MU#55V5C\2S3Y*V/E3Y[H_;6:_ (8D7"V'PN"X1.TWLMB[54>(/'&.%1Z)5C>
MMJL\NCV6!"WP+)X^=SR-?B@SGB9)<N@_?>END6D87:^%K'N*[W!)@KGN21P7
MC2U[D(LJG+WY:4!PB*Z3=(U(59S6M,JY_T7):+P#67P9%F/AWW(P';^6]1?2
MLLH$00KP=J3*Q#<A$X"ST0++9V,5MP\0<NF'/?IECWZ:P_9^J-?@(!,H<*V$
M21P=ET3[XK"LFBB)?7J.B9';Y@.(>(X_/7.EBHF))1J-4R<4PK04U9R*\+_!
M"F3!7C&4O2KC#6<I>S4^&Z0'"_AP'25O3*!0$3])5! 19".&34,VW%F.-^33
M+B<I:@GYMW.\>P/F^CM+4_P]TJ\GRG*T S 7#ZW7X*"'HT0.@ ^G]0B)9Z=
M^'"!)D^O$/';<(T4'+HJ.$1:?DMFY+$I>>*<9HJMKP75LV#[TB!,3/$][X]6
M"11%_;V0>00FNTCFX9%XM&II"?3;HQ>^N\1/\*L/6_8FQE3L>++D+RC82#?H
M8&5%RB]ZPB?)&\L^*CXFLU09J994P>_,U?LJVL$6X%51NF<DRG54J#SV33%^
M4:IS="%B#"KK)9K"DF"?$3Q!(/@HM$E(4=;+.)%P72 0J/ '>H6R:7 5)HIA
M&X&N^9$5"AD%2Q.0]T_+!T01JPX*R>J03!FN0_H/A4SK1T55T;Y/<X-<(E4>
M/]M"GL@$-S"S8O\VN"?A\V]3^A'ZSU_P(_PVAQ^A/P62ZH39?S:^%T$JS0E'
M*T7/^'01X8;7028VA:7_?@\A*/BH2<K#O=^[$*GT6;F&=&%ZP9^'N@XIK>11
M42'H'(Z,176Y8"7QB=6$_B8"/AT;[;6X0%Y9BJ82\W)3$D,H)QA?CHPALF5<
MM1TDZHG ",<F]]\GDS9NXA>L]MVB5Q3]T.L&AQ$+>&DRZ >/#.O],!F6YH!4
MB0>9D3&NJY %KU\G:27.*&N'R*P,F>:CDY3B:GC1R#[0H0A3.3Z/AZRH0A$>
MMQ;UEM'S=5!T50,2C"M&<<)'CV][W#UE1 /*KUYA,KWQW8KQ/#K@)"&F@U-3
M25F329HJ19\5QQD(7:$H!S0Q<D(_*BIXY)24B<KW#$2!( IJ%V-D@Q&YSGY!
M?I0_G\7!8P)&!1:SV['N5N4NHV,3@VY&1N=QNB-'40U*$SLQC!9(+J:C\@CK
M\0ND#4^3>'Z$1:H0-OI)XC@N^"F]3'9/^7H7U8%(1H"1<0! 9A32E9*M3"Q4
M-R;Q"BM*-:A7(PN"F*[==D?J)9C4RPO:"/_;Q3.8'K.;N-!6%G'I*[I$6;B)
M8312$<#/GL$3#PXCE%%?*U=4![!6D9D &DBIO-&B>;@5RG**($6^[9UM4H1*
M#Q959L^"?^YH*?JO/-:_$\+LE2809A."O>JM"A*\%:4!EF<-RT-KZ"2Q%Y2.
MQ:"@A(9JK"!T8XV)H:N6\0"&TK P>BFR0UJH\A8M%LA@W(29>^74/39W_+-X
M?A:Q)WA^2PIH1'(16\,7B,5/@,%T00RF;=[;LW0E+8V?KCCY^(\-'& M_@2A
M".@E_Y8R@W6'W20&M#%?S"W/C"RV1&)J1=;C3S-/7@ -*C99W<FO(LBNIQ-$
M0HYC&67 +W"XO\4(1!61=CUG)9(BM)#X>2%B7E@=D:[&Q@ZN%X28-Z]-$8@^
MZSK81!S0&ZRV*O9=G5BC>_P$WOE;1)WOJO616[@QZ=)^5YKN%NNK_]F%^5Y)
M@ZG#K"252 -G08 OI>P^R7(_^G_ART42()$6<TLGUN4VB3> 7PA'^K.?XZL5
M[B+,<<;^Q?H>W[:K\,6/:N URK>IQWA.,(25)7M <'3H.T,P$G#'Q5,4;JCP
MK*#<JJ,3)%*YL1"+SOT()OGXC%!^%@=XJX84V;Z4*;+S/?[+2Y+YT:<TV;U@
MP9C=C]"&E%_88=&:XA\E<:9[.*;YLA-,+B0S%4HDBWH*%O$#8 B#/(,;W"5Q
MRO]Z[F<A19)7\7&PP1VY2&%?I"\)74.R/2[ *)/N]3>JL8L;.T %!B2 @2D7
MMJ&/$X3U#%<PJ38##>T$F[C. IAT>.[J^U!J,K\47=:\("LAX .QVJO+I$"Y
MPY>*N%TK!9KJNL]@0SNQNCQ'H9@S0U=2OGO:QDZ00FT]Q5G#1PS4;#D9!/\C
MM=@KZ6LW@A-$<SPO(2SR$F6K-'R!/Y8U7^AKHR*ZW0CSG^VK&*6;_57\&J9)
M3(TJZ]0'+7X%V9WXS&&1"O\=I;!PKRC=:_3EK@/-SX(ZJ/>7>+V+U@220"FP
MUVTX'<9P8L.36Q=+@6"+I\>4U;S3OL.JQDZ0@K>5%)X/)NRS9!4RSQTU#7)Q
M024GJ/6WGH,ZP1JA$&;QQU]"_.JDJ^<]"1C4Z69V/9T@<K$*SQ$^9ZBZ9EG;
M1>\VDA-,*.6I,E'D)L"SPS2@@"F&[ F2%43\VVZ+Y2VMO#;2)YQ@FRH6]_OZ
M0V?1W ER-*E,91[1^;Z>D0W9XK=&EUGO4>=_ZQ]#O&'A.,<YD[9YC5>5 FK9
MQ8DU!QMKSFRL2_PEO2- W7+^M;EZ/+NH)3C5Y4Q5*R=6@(O^^'0\A;00Z 5^
M,\* F2&7^*!D:X0%A^"C276PZ>\$P5;&;?R/4)+ WRA%RI9#S+])%6AHCTD4
MG._RNR3_#>47"9;X5SP(9)?E6$I.Z_I"MV&<6/4J%C4UW.#KG>:C*E\.<Y?Y
M5Y45_";5:+',<A-GNQ3VX'V*MN%NFS%QO[:,EOV<6#?1":>@Q]#,C>DKJFED
M1D'5W,,)H@RUT!60XBHBVXW@!-&B L'M0]2\RVR^I(:1ULW5HKL3Y(I12H]O
M_HM>K5"W=(((#4H<48)L0.*4"]ES3"<8PQ_R7\/\F;_3Q)-*8AH(WIG&M&+7
MTPDB16C8<S_^'=X&97B.HMVL!&1I#I,*\"6Q2!]1^AJN4'4]=&V<X/PEOM+V
M^'RD_AL\RK>)K]"+&AL[00HM6$_JU5=CZ\[WI%@]@5?16B+MNSM!+A@]%NLZ
M.J]24M&T=8*02_22HA5UU^$_1XB!X6#9'0OS_]*&/MGT<X+ 94IB8_;DI3$*
M6^J63A!!IE3&1"JP7+5/L+&7&\05(A^/O+60#J6F3I#!0W:6";./LV<'WVGT
M(E.^J4V=G"#M,@2PUSA@:;.76()=)N<(0E@N_?UG+.I OB3$="JO"NO>3A!+
M'IK%6KX-=!M2V]@-4FK%2/=%P5"#X&KLXP1A7)=BMOJ[)$ZX(<"D>BF:.T&.
MRI9QA7F=(["4@B8<!CL_(KK3IYV?^I@>=2AVEX&<8 $Y.<])%* THP'_=TF.
M+,TDUIV=()59Q8GM5Z$E&BFU[>L$H:K=J-Z"0A"5[;9N',@)%LAI4Q=^FNY!
M]=?:TDWMW2"(/>:9\)I?0B %5F]:R (6W1V)4[\@CV%T$P?H_?\@*2I0V\B)
ME:H'K14'Z,)_"7,_,D5EV_=V@EB%=[4>O^(7-@4>P<*U"&4DRQTRQJV/_$DG
MV"J:_/#1A7H<8)Q=K#GQ:L73HIL3Y+&2!B ]4'V8VJMUGAA%T_F=FY6WL1)&
M7R24L,2\?4/$?J_1G%C3(HR5>C?IX=-;50W-G2"G?@_?I^@%5&=$@T683H-7
MBI"B-S5T&\D))C2E2)FR4VW[.D&H6M!ET3/D;V#ZMQ>1JSWGOZY83 798=<[
M>!785(ESE\?>Z4(Q&KHYL8:5A-<&(4O5U!')ER6PD^DM4E+Q*5Z9D]TK;9U8
MCTI$ 7$[ _8-!%3@_X"]X-6/)+A*B\ $FV&<(+]K=O[R.=78F/H,./\%5'\&
MV=WRN'OB!4J3E#^"EUAD7^4DYJ1V)W4>R8E]T?0NWN%=O'Q#T2LB2KG.:]MJ
M#"<(+[.+N14MC'<0ME@ "M#TD"*O$657[W@QDS3 Y*9[$NL.$B,L,=W>W+ZL
MO^-'^=S\A^GOM$*C>"<2%>D+5&?$.U\(^"5:$XGT44CCO0>;GQ4J<RP5H04U
M'ZHG:H)-6_9WXBC5?$7FU 1#<R?(H:X#E4OOUI0Y8]'-"?((W*$80JKU:JI;
M.D&$ZI@43T^1;\#-<)I=V&($-XAFTZP=(+U=HZ&+$V2IG $T[S#MZDO0='>"
M7%%$KD,0/P)23V@*N6K3WPF"F\3#LS668_K8;J0!G"!9NO[%BKF- 6=BX_FE
MF<?==HN%3WJ<2D"/Q?J<8!YH$IR6R>?=>E/ =:E^79$\!E7ZTR(^1\]^M%ZL
M81 2\%]T-Z5--6'0'"HELUN!+@#'0V6^JOWHQ-&K%!\QBFRZMO,?/&9"$*"2
MEFCU'"=1LMF3F@3K'*L]^#9< 596O"$&A88$MDZ#.;&FU^$["B!? O%S:DC;
MU[1U@I K/P5#?(9U6)Y%'ZY45"@;.D$"]3"(3_*"Q-DLDZOW'(MA>J^$OH^C
MA/4(4FHUC$/DRYXCVY4U]9K_+M7GU"A^=F(M"GZ:<"L:&SM!BE'--F0HV_2;
M?VL5J7PHX]4U '#5IV$NI6U7*85T&\&)5>T8]*0,=F*+*?Q '"4#QEJU^:P3
M["W+=91!H&#ZA@H=$(X#B2%DRI:!T7W&<X0A8CSLEWB7H> \2=/DC08B^BMP
M/EN&TQJ[.T$NJT>/ C4:DP&]SZZG$T2*#N0F![,3$WY N8^OGX#+YD*1GDNT
M#O$>4IOKFGHY01PO'*'+!Q)_=V+"5;@9DXBD:SN_ $'+PE ;E& >JINOU.V<
M6 GZV++WU+0,RH9.D'!?6-0+;X(0Z:L\#\8>3A"ETLU4YG.Y&D>R4XI>G0=S
M@A6/*Q3[:9C +:8W'=5;.3%Y\/;[V3.)I@NPX++_DH$QKXS.+L0W%5'VO5T!
M\0#)E$%T9/4H F-#)];+LN0@AYE5WI3MAG"";%G(5FJ\#4V=(&-('1/O4WS,
M\/V(+Q0H<P,A(B];C<5CD@\[P>)++(=E86YC!M(T=8(,+9,U)3],[9T@R/ZI
M,$EY[4=Q@O@"[ID542("35%&R0(FVM#/"0)97*5.P1-^=F*Z@C1][Z>+E.04
M4-PX[A13VXT;NSE!7I'ML5CS*L+&4V5J[P1!@LA",(PC:LLNZG'K3Y!=3S>(
MQ(]P$$8[,*7R2"N4F4MR-O69WP@QI.3Q:Y+^7B:'U]T=HWW*B?U!T=U*<WO&
MW5@-$='-W9P@CX<; JP**3V8X.-:FJ.,,K]M7R<(97L*-B6H7KL</QTL2D8C
MW)E[S'_&+S[_]IC )02^Q-L+C2]<V<J)%>E<759GS^HQGA,,D7"1:YEI^E9.
M3)[?ZP:\SX;+Q+Z_$P07XAO+$L%71!(3+ZQ&'#=VF/\Z$?$]%^LJ[_GRW,2*
M]UZ7]]5_R/G9PN2[/<_VO,":;A3Z,8D1WFY1N@I]72WZ%GUGCPF6LKW9?^#
M225/C W=.)5%,K<RWI*4,\2O8;N"6:V&<H(-5]N7*-DC#J,@2-H&RUQC)R=(
MZUS.BEZ[0K@,.9/+9S^FX8W9)PCCS&YBBJ.KW!(3?=L)1K-0HDN4A1MZ*>O5
M'5U;)PBIY 2 !J9]H]5-W2"CN(_4]H>K=\AI89DG1&%A#V_U^K*\]8;ZBA/,
MNU5 M7_VW\/M;EL+&U,J%RWZ.T&P,D#P$SZ2X&4\W[,#2ZYZN'^>PQ?=F>@V
MTNP"S1F>9P!SO8[\356(D7YT8KU,3N&E_WX/DC1^:A0%3)5%Z7H,YP8[U&$I
M)9Z;DNBF3O.K$Z"P,P%"E_9D:N?$VLB^?K.I7-?6"4*P]D**4?H10-;?Q,SB
MUQ GUMQK_FW&\@/92T7,8#$@N\8!1P[/;?(+;?L[L9I"$*7)[:9HYL3T[U!>
M7M$:+WS9P(DITPC"6PJ55>2^Z<%'],WG/S%8M",RSN,^ Q,C+<J7[2(:W]!4
MW;95;R?63E/%C<(4D!^99GKU#G:J3 VYTGX4)XC_NY\2ER14[-._7?563DQ>
ME8YJ#R1J[N<$@17[N'Z!E UGCWE] &-0_9ZH_.0$ISE&<E$TA3XPAFPD<P\G
MB%* K^@C5;2-G2#E,LS\S29%&V9C82!6VA?6U-X)@N[39!WF.@FG_-61R3+\
M;"L<>7WK^84;T1%'7VB2GTQBLXA@<IVD*-S$5)Q?[6$)L'B\P==IEB_]=]@_
M]* ;?7S]AIZ?39]]++VE@H)PSPKLG>$S1>S[D+L.T#]0)54C"G899'[2X1'U
MX_WB+0;'SQJ5)=&3* 2@0*V=PJK?_ 2RA$&QNF6EJ*76B6O7<7X2SW:;'3Y3
MSV&:[Z_#%/_Q+5D^)[O,CX/E&Z9A3Y":=<[Z-KW=N)\I.B!H6\1>X4=&Q=_0
MW ER9/1Q@Y]6V= )$DKG$54S9("U>WPS7AJD%_O>\Y^U(:->>>&@VI$<XR-.
M[!-6GT19E\2P\2VZS;\S&@KYW6IQ8VP[.K&"CWBRY)TG9F"E"ZK29/Z5.7MY
MB4(47,4HW>P_I<GN!0N>NM=0WW9^0A;;.'S:9>K49W4+)S:-PA]I2IDU-'>%
M'+ERV&*79SD6ES3%:DWMG2#($'O[V?]GDA(D=+._K^403I#-JRY(IBQ-4H"N
M[?R70KUH"2__)12@P&_FES@M90C^RSF*T3JT*H72850G5MDBP/Q7%&Z>L5A]
M!@_7!GW)T'H7@5:K= /W&,\)AL@&JS89F78]G2"R9Q#;^5X]@"Y6:L3/S7_#
MB*ZC#+Q%3"=1>IWL>LQ/E*$<+IDE4ZTDE<KBEFP>9/8 .1K(3QXT'Q+XH<R"
MK]"^FMK.OX9BCI=@'&%*U/4N#E3:5F,?)RZPFRU6>5.:)D[VTG,2*?T/RH9.
MD,!C11<QPSQC9@T5%;JV3A!21L+J/7!RD]D/^66R(I%W_W?GI_CP1GN*F%<]
MWYIF3G"=6ZZ4EA-M(R>F3NRS<@W)6HU)^1^$EDH5LL^ 3K#DW(]HG3>$\EL
M-@5_BD::TK5U@A!E"9LO6)G/2%8\U*Y=08:<%L*VU0!N1+54%TKZ87XYX,LC
M44,(%,'*CSY!)9-8C51BT]Z);0;&T\4:KC<1&^]1(P3H6SM!#)6#"WRE$IM:
MJ4OI&CM!BBG4QHS<;=/1"1([9SO>[>#X+-;4RGGVZH<14'>=I"3-4>DL&.E;
M\U]*VC)5Y"VGY:(@0I:\W-LPS^%1R/#\-0#!7:MB#?(Y)_9E*6,;14)%L_EW
M ]^NB_4:W\QE?L4%2 '!EZP>8-78PXDUF2HSNF)2)3]"><CBF1CT<AEZ<DXL
M%37/%V@D34*XH;D3Y% Q02] S'_F[]-DA5! RH1K;EE:/)!>R')X:;<1YB<:
MGIM'E.<PR\<OVO!!52LGME57-*GE6Z+:BSV&<X(=JHB4HM!1"*%:QNK@5GV=
M(%1.6#78^6K-G)A^JWUVA\4ZMM>6;RAZ1:2RLO(N'6)<)QATA]X8;B%DJZ5)
MC/^XHA"_)&1Y3__7J,*U'6-V*["$V72!_[A(E\F;=%@-S9Q8-PO\?"L\6G-G
M)TBE4J<IE%ENX<2D"P&1>VQ8W'PS')ZJ@Q,D:0U0S15Q#)V<(*T,M2XO\\5:
MO.3;X*/9C3&_3'H38U$DI@80$$880+KH "81+5_B,-=)K!W&<&+%E=X&H<J/
M07:U[.H$F0HTHD;4LGIC)TBI04B?[T40:=V]:M'-"?*J.BW!3.#F26*^5)5.
M:]_;"6++N[):N$XHX7Z^9S]:9,A8#^,$^5?K-5KEA:RU]-\!4T&V4-\E<8"@
M!A3$3[+ 6K7A#IQ<2JEH\*_,_V15$.>TZ".U1DZL>RG]+-8B;QG"*$D,J5E>
MLR;W69\AYU_1PD'#;V7AK@)'[?DNI[8\=I^QL%%F-[%V_PPQ^OS,PL<5,53:
MRS#%\UVDQ#"OD\X:VCMQ*"PKP=TVE%YH-883A%??K(LDV-[$ 13;W/G1,LS)
M,WZ?4-R 14K2KA9 &S%J(T@;N7K/@4BXO./=EI525SZ58WUL_D/QY?$:!7@V
M-@$NFI9.[ >%DFQ,X#:U=X(@42CEQ5'*^Y>'\_]+NV?;]'>"8)X-!7(6KV$%
M2A7B8;S+Y!P$,$CZ"M<A!PD#^_#'[ZE1N"'/JM_(3C")V[<$'#B\T-<@K@M2
MNU'H:3G$_%>4C2C^!0^10B5U@D=+J:K=8%T'FI\%C=4AG"H!P7?:9Y1NL!PH
M;+2,%#K(7AAC,^'R->[9;B,YP00-JB%Y>_I"(^H'<8)T-4:G419MZ.(&6;5:
M%B9!0]_:"6+J%:#,>+>ZUK.[)7G6"=@EJ[Y(\3<GN$ZWN09B7+"&R^$; )FD
M/S1=1G."&:04<$;1W:@"2DQ0%-Q-(]KJ.\R^$7FAIH_?/Q'-L+H9J[\[L08L
MW:>2Y'.67_AINL<[1AL.:=71"1)5"4!Z=XZ^M1/$<.A45HM >&3T@0M-?9P@
M;)GZ =KZZ>\@X)&_@/'$0)6Q@Q,DD?L8'LMF-[BFJ1-D""6FB<@)*<%8)F\.
M,+'J./NUS66$:ZQ(^!&5KZ_QOV4Z8:+6T(E5$D,FS 5.U"V=(*)SC+TRDOY3
MJH$('N$S;K"O\.SR3&;+V)M:<P<L'V6F$0KDN/1EPM%P4T4,>]U$TG4D)]94
M8;4KS%F0%K)8"[\H(?3:C> $T9KT1M-CT]#%";+JQ1/HA;),.*R-0<TS=G."
M/$7=0[V<K6WL!"FD"CTI24\D2XX2*EP.I=W1+-AU&<@-%G0R+F@25SJ.-?\S
M5.*/8H%@0X)]5N3A.$=0N*L>.F%N[\3*G@^(",Q-FZ0EV=JF)VB<+SK!U%*8
MDJJ!G.\)6*6E'&;LZ@29I"3#&EPR'!F"Q"TSK&W(VRG27.%*S]0_Z9^%(<>?
M__:PQQ%S%SML&6[AV?J,I8P4<SF[T-:<M.OA!%%,.BQJ5V%-CGC <<?%4Q12
M(;*XO,,MV82/^%^SM;\JJY0HY>VAQG:"44*,& ^:N$.Y%$Q!*[Y:Y4W9#.$$
MV6R"Q.$0H.!\_R4#9-:;^)5F:IR!]D1?)8-.TGX4)X@7(*8O(=0-X:N(@XM>
M0K1,JG96V_1S@L &D'R*M KK WXEO&0::/$.PSA!OF7<IS:!H$U_)P@NPGXL
ME393>R<(ND19N &]/SC+6/Y1*?WH;V*+;DZ0IRHR&:,W/P)[A_+--?=P@JA2
MRK<)1VN3.=E^/#<8@HBJ_PDO5$JJ0I\%6!8*X2$$8@SU(^UZND$DO(8/Z(69
MF>M17-JH+U,G)TB3$X8,R!V*=DX08*C&IKX]M<V=($>J?*6K)E"85C(L<^<E
M-+)@F;&\=0;ZB!.LHR6@:+GZ>MR>-J9"V\,)HNIX\CP=@!6QTX@^YDY.D";F
M.'#S,8\)*\J^E=J5)I:LS1!.D"T:0^.@73"&;5]GXC'H<W<5!Y<5MYBVD1-K
MI-'Y+7>E?6\GB%5+GJ ,A_$.[%HO+-]-2:Q];R>(K9\9\.N9 Z!,/9P@2K@6
MRE@@RWNDWF%^B_OR+?EE%P=8^/@<8B4AB8GUJ92E\<G:I/Y6DTW3JK<3Z]>S
M5I >6'Z0@=U@4?#/7993EU%R%@0DSL6/P!U[$U_X+V'N1V3.3]6(L =$XV(0
MPT"GKPWS7$(#K08W]C>=8"R/&K.TJAF:.T%.*_G?;=%?E;>.[ZXUS97X3)S,
MZ)?D#:0+(=U*;6OI-)03;"CD"F818J4$C29?N:D39!3.%,'! E*B.@Q.W79V
ML1["G_#V>=QOGY)(G'GM1R=XKC!9&%U]IO9.$/1W/R41-B!BZU"_JFV<F'A=
MB+83M9V8O&W@V]DZ1ZD0^W:-I2Z]GZ/;>$XP1"CX6L9 &B]DL>'\^L4-"&$D
M^X/'=##L1BJG:?$>+7HYL3ZB68S8PAZ?\;O/TT6:#&GU'DX01::E5%RUIEUE
M:R>(*4$92]_M0YC]KKO43>V=(*B 5TN8WX"_I2C39O T]7&",!68Z\/C%[U_
MWMC!"9(4@$*^-DA$T=()(K@B:E)2G9CH%4.A8Z8 ==H:OIX@G P%%*-NF>1^
M5(6@Y%E//.1::8T=ZV-.L%*=KFYIN;#N/+]\<A[Y<4[]TUF6@+=:E4/=T'3V
M.I%JLZNJ<*2^I1/;3@C2L3E>9U'$( =HZ35Z@*B02%!7;"."AOW8_-M:#+98
MK"OQ!K6=;6SMV+[@[R3)$2/98OA %OZ^\O6T7/G6P\V_MA9UJ6HK;-''B76^
M1&N$58>@A26RH8L39%F!^>M0BZP[.T$JF:;1]">W<&+22[1ZCI,HV>S)K5^-
MSS*D[MAT=(+$+QF\<UD>;D%N4=$BMW!BTA?0),YI5 ,HX?BUA7_P-T@9UFQJ
M[P1!99X'C0ZC;E_N!#8Z*)0]G""J?$W/Z] )V?E>^)M%D06[,>87N3E8SR/>
M8#Z6 972MJJ1$VNF2L A=Y:00[QO#JKO,,S\ E1#'E)MCUIWFMUIR"'SKMZQ
M=A=O",)7U7>H:C/_F@@AI145E1:64(BT33V<.&>*VXQ98 U8'XV=G""M\*HQ
M@5LI5-0:.3%U,9D6STTOWRD;.D'"+=XABS7-%='/O][*B<F7/A96Q6Y_J9-*
M-4V=($-5&\'X7!H[.$%2!69(O[.4#6>7RC[[[^%VIPA7K?WH!+<EF&@L,K%Z
M2F74NJ7!O<LX3C"@*<M"?:>9^SA!F!QR\A!NGO/%&FO8-0.L50<G2'K<O;Q$
M1)OQ(_XN"H4PC(']=EV=(+/ QQ'VF>+>UEOJ&KLZ068U /T28M<UGDYU4R?(
MD+.V"QA#8N=FI8V7"5;8LB0* [@3&^[1KJ,YP0QAVS5<G$Y,MS@:+"J:JG/\
M'W\)\86(%3I#IG2K 9P@F9J%37'R8@,GIFP/RJ.BQ[ZW$\3*%X!P[DGD1N7P
MFPN =!AH?C/,71)?2:4<DY0(6$WU'QL[.;&ZG7&LR?]((:A*]\.0XSO!,%7X
M]-5[F.4(P-G6'%:7E&Q4B@ZM!IC=?'H5YUA_N XCE%[@<[E)4DD!T31Q8J6X
M'9II?O8>3*N.3I"X2#=^S*)4RMN3@HO<IR@#[8**;84<7OA?;!7IH;_A!.-*
M$]I=0O,J]6FLNK:SGTTF$M%B$A#RH$$ZT+6;_VTMJD17M0P!<!^<G<3%Q&M#
M\T"=BWIE:;P?7\-DET5[J#&]3#[OUIN;F&'H\1_A)Z$/L0T!EC]!UZQ^F8[!
M(C>+$@!%]6I6!:#V_A\+84X<UD)]8=! $J0STW."!<!!XXU.K7U8_DKY7[%H
M$9JK6 _Z 2=89DSR^A('^"J *PP%5^\K\*II+[]. \U_L? (.%'HO(_\V%CL
MJEU/)]99+5[;"^).$%$'C-+$;5IU<((DG@-RG:0HW,3T!5[M"31Y1#C/<8Q5
M]-GW=H)82XW&HD")_1A.$-X;IAL+RFE^:4BG'O8+\]_+U^@IW6'!:/F&!=+]
M%;ATEF_)\AE++WX<T'^%1&/-Y=RN^^P".M6,']"&X(K&N2KV2-5F_G42LP'*
M@!LHFTV,E#DH=,J8,-N.\Y-XB[!\"T(W#07YA/<59C]2A%5I6SIQ"=WM8*^#
MI@'P*B1+DOEEE,9G;6LGB"FW3Z/A,--9#BT":GL.[@2KJBY(HQ%'V]B1._(*
MZ[\03?8I3=[R9U@4/]88&I5-G5B17Q$\2"@X@_I-&\2/&@V]7.SR#&OB =,7
M5ZI5:C6 $R0S [W>'RDU<&+*C\#$IWWE4C=$=1G:.T$0Z $4\7*#A66LGQIM
M'?K63A"CS.PR@VTT=)E?TGC$TCMF^.H\S+/;VPN-;*MLY<2:J'2SSDJ=6YI<
M63JK'BH("<S%X5">J?:]G5A/ =>-/BUGN_PY276H#H;FLP>WJG/WZ\]14ULG
MUN4&*Q68O3E+:S.$Q*A;.D%$*60#=I-8:\\N^US7:_YK0NN< ;]+X3@I7"F2
M:Z=V:_09S(EUKN65GN^7^(,Z0Y:AN1OD*/%93.%,YAY.$%7XM6[B%ZP]W*)7
M%'W42[J&YDZ0 U=#&5!@K.2M;.D$$8I:H[HSHVGJ!!F6!=SN4+Y8+_UWTV)U
M',H)-I3O5@%K1;'+:0RG1;IPNQ&<(+H\65@;EG#'"\DW*Y')>5*J\;SV&M$)
MIBAV+0#H-*2*F_O,+_-P$Q36X6*U(:0FV31W<6*]N(_UGJD##/4(=+@2>-_D
MG#5VG'_E"ORNQEAE;4LGUDG"I;*N&6H/==5^2"?84NZZ^R0*5PU5A/6MG2!&
M42S51(VAN1/DM*NJY6@=K<)S1"HL+=8<&P. W1<Q"1J4-1^A #W5C.1_$%H6
M@8MX_5Z2S(\^I<GNA3B)LQ4MW83/HT7=ISEGY=#BF,NVDHNM^*=X0^R0# 1*
MS]KN8\[_]+'"*AQ> R\AO=RIE:PY!+!E?R=V@K1II;VLV+L08Z)WV74<RH5U
MUT2<W&J-]\U=G%C=(J%"']L@M7!BT@_HA2EJ6!FPJ@-@[N$$416,#_UZ*-HY
M0<!]R@*<K?T_YA[S'_O_VL6(AOX]0K1D+2"0A EJKOH6?><G]+Q>(*@$7;X)
M\'S#-2F^4RFA+*4SX-]V6\!!4;YQFG3Y&3[O2& 2I#52BX8Z&JG\W8G372VU
M9IGC9]'-"?)Z"?@TB[B>.\#D&U&5H#*PSNLSW0R<8'H#S*,YY=^JJQ-DULJ/
M&NC2M76"$"T *0!/Z&,*++HY09Z-?DJD87AXDA5XSXHR8%WU7=UX\\L$-AD1
M)@&H97\G=D"AZP@IY_<)T^*,EK;F?DX06$3,E29H%3V*9HY(38_/*(J,4=QB
M"S=X#O(GDUP->TC1S(GI,X$:RNIB$9V@%%PCF_+#FA[SWVQB?0Y!HF*OU/4N
M#LPU/31]'#DA^/G@*A,MH&-2,C2-W=AXC4?&H=-2LI1M\T+C@;=AEZG9KV[K
M!/=M"J%<)SMUN)=E7R<(O150FZ_]%9DKCX(%>>V2A%]3!4M%;)O^;A"<Q)N<
M63Y-@96J=DX04+& &J\(7=OY7R$5' 1%ZMM2IR&H^(_D@@C ?K6&$JF[% Y6
M"X")5B/.?H->)BL2C%@""EWC?ZE=GIIF3FQ.V:9-@EZ;3=^DF1/3%QTE< '8
M.E7$MO.?+47T>]TK:6[IQ&K,'0QQ<F$/YXIB()KG4=/4"3*J=:P,RIJFJ1-D
MU/9:98>QN9KMQ*V&F/T%O( HK13Y%TE01]L3?G-B?>ZQ3)M2R1;?GY&/E7VN
M1Y81JY<H6Z7ABPX]JNT83A!>"3L6$NA->&?F/FX05KI)#7=&O943DR_A-/FK
M#FJ+(1S)T-X)@I@A3:[!8?*FM^KH!(DJ[?F6Z"?Z=6OJXX+\N=VB%+P G_WT
M=Y0KRUZ96SJQ.C8>K+/\&F'64VS>79ZD>ZEQ5\=8P[#SKS%%7[_UGY*TS,V_
M!EL/(EE%=?6\H</\) T9A\.O5-ITU) ?^5-.')Q>T-9&+]$0 \\NY1)O]_US
M$FLBH*J_N[&F$MK(S?;%#U-@:Z,35='>"8*&/(,EE+U161[X4TZPD96KQ#I*
MN*&DZ4P&ZI9.$ %R2$CMQ* DBS!.=JE3K09P@F0:;WR#-Y4Z.EG\W8D),X&(
M.)L+$>KQS7\!@<@ OM#<S0GREBG!0]^;#>?U5O/+35\>>1@7<?S1H^U'GY)7
M_!<X$AKAW[*?$ZM3*LO7X3L*1 ^G6;>N-7>"' WNO,'H8>[A!%&7@*N2O$"E
MO-5SG$3)9D]J6QHJTC1T<8*L!Y1CK1X%/#963XVZI1-$8.$<"X"ZU+^FPD'V
MO9T@=E#M3J2Q ;Y_BN\ZP> AZHHTPQD,_Y79-4\>.D J'H1T@T#PE2[$H-IN
M?EQ"D'MJ6(-EUAQU)D@5\UIT<V)SVY@'60$+J<5EB#O"F0W]2+6=AQC7"0;)
M2(9?8G\+X8-X%2]9T1S\7&S#W19\[= 47V@0Y$.LC'?JBM@]AW2$+32DIE@\
M>FUI*=:UGE^A4,';<EA;P+C%?ZPI$Q9]9K^\/H=QN-UMZW).[4<G-I2 3VNH
MZ5AMY,34&2X/C^K Q[;N$[1,X>PXE!-L&%0@I $D0O#(Z")H[8M.,/4L"$)J
MJ;C'.@F$E;Z$N1_ICXBQ@Q,DC: XB#_()V@BS44_ 2=8SM'N?DVA'&2\6*^9
M2W29//H H<99\B4.E0]XJP&<(%F \5LF7.Y$6.(0 .$2507WXE4O*[@;\V)&
M^(X3#*3S+QR:X":$DZ(/%3%VF%_.8S5,H&@2#U,D@@3L6!V&E$4?)]9*R&<T
M5]E0-G2"! 9>H=]>4@,GIER'@"#L+=4"<^!8B^Y.D"M4+:3N.H,)5=W4"3+X
M4T8]05)->#OO:ZL!G""9A:?$F]*T"B]5&L [Q'.6[OTLO]RI4=9Z#32['9+E
M?U8+H A1P56+9',/)]:U?H/H@U&[WTKMQG2",?@<^IM-BC8L/HLAV!CW=E.?
M^2488N-?K,70,_ "^#E!7"^S>]0U/5OU=F(5)81GHE,!KGIVF_@Q;$'%9611
M-++54$ZP@2U<!?UY3__7:$VRZSF[I?)QA6(_#9,O<?:"5ECW1H&F]I.NH1/K
MQ.&6B&8,)^DY?#'(2(;F3I!3?P@$R"1FW"#5/(1_+H^/W=/29D0GF*)$6S $
MLIC:S_^@L)?]<?>T8F'=)%R>O.TT@EX=76_9SXD5$X0X;9Q;M8T3$Z^?%E[B
M@9G>6@MR^OY.$-P ,VB*1++HZ 2)*K^A"K3E#K_-#TF$1]@LWU#TBCYCNI[5
MR"']AIS_$KK$NW&/'_+4?P._*8AD/-%,B[W1T,.)M=8LB=(JIV[J!!E%7-+Y
MGD4A$320E "]K/;:JF?-W9P@3U(,*FINRQHTQMY.$&O(&] ]BYKF\U\;[:*_
MW8_YED3A4)DD46GBQ+3%$T#=I%CD#7-\B;VBJGD47P7^/Y/T H 'K#3UU@,Z
MP9)?$01UH^ ,[S)_@W@EM<LPVO&R@#K;8\<AYC^-CQ"'BH(%'"R8>FE04:;+
MV/9Q8CVYQ:A41<T0S*;V3A"D$AD?4(S>_*@:[6;9Q0FRZ@H/T>L"8LD7LY;E
M0 X[W<EJ*"?88*L0]%$F'+AP1-M#9F.T:.SAQ.I=0!.IPC86N)ZW?OJ[WC/>
MU,<)PFRWUDW,M%0"-8@?_3[[M#:8$ZQ0&@6MK8>.N%,?MWX4\:@OM?]4:N($
MYZL54FYB$J8 Y^;6Y!NTZ><$@7+)=*/NJFDZ_]7^.<1'-HF)E%O+HM'(DA9]
MG%B?<SS/$D2E*<-.UWC^-5),JFH),K5S@(#/GP0P21U@E*+1_%,7X?%9\*W-
MKFK;UXGS(@./Z8R-]59.3)XXE"BFA0A,3M7W2D0IJ=A-G)_72;I&I'JE^BGJ
M.Z@3K &-6!$379@ [&*OVX_B!/%$NP1YPH^8YY%68\SQVCWM<F(W3LB_G>-'
M+&#R[%F:0EDQ;47[_J,ZP1R-Z:MF\V*VL%*"(4*8:;<,,[(33"H1/\H\4E!I
M&>A1N>_M(EI[#.<$.ZIAN/A>N'IG@-@\6E=]9)K[.4%@X4U3^=+TA@&+;DZ0
M5]Y*8CF%LRAB*23@?9+0BHL[WA;*;]@OS"\#7GS^S49\K3=R8KTIG@I>B!0]
MX[4H4 (@68J(*TO__1XT;8 F%9^O>]^8V-)]2"?84AS7F_@%/T>W !?T@P%K
M3-]\_@W*C7!8\*PHY5DM#,NJ@Q,K5*UP8PX.T#5V@I1*FJJ%/\NAH@5DQ_R"
M_"B'G.W'A-2 I,8>72J?L;4;*X)?HS>P]^(C<)GLGO+U+JK[$DT+U6: ^=</
M3VVWW9%01-/M?4$; 7(\J:N<X:>9WWR+N!1=.=(GX#PG6] +KS$[0(1%#(J1
MOP.:'3+S?*H+\O_]J5R/6_PGX1?RPXN0R &_,W)JBX-I^R.>.UZ;[W_\[H<?
M/OXI]]^3.-GN_T16Z0'_3X' Q/\+0 C$A"\8N@M^A3E\H?KY/T@;!E]U !(?
M_$&QP1)Y;Q$1+"F6XSE%:SK_#!- =E:&5G_<)*]_"E (5/P9_O M_.&/[UGP
M;Z1:!T3T5.4_PCE6S4/Z7;7K1Y@4Y> #VH3PW3B_\[=(,3=ELTFG>$&<A]$-
M7K#W_X/VVCE6VTTTR67J@T+VN-\^)9%B<O+O$TV*!*]@GO!J[YK%53:;:(KL
MHB\+MUW%P:4 (2J>#UW32??A=1CA6Q=_=I.D^ETHMYIT@DJ?9VV"<JM))WBU
M12E8;#ZER5O^7"G=7)NHNO6T5X]%4F[]'C)UFFCZ!68A'E$Q4>GGB:=$'0+Z
MPZYN-_$D-54G%=.LMIQEHI17=E,5VTXTV3/\]8#,(/)5YT;^?=H3;BS17#_;
MZN;37O.*NO?U6UYL-/DS*9?R4+Z1K,FD4VNHAUZ;IZ[]I),&U2[%VXU,@!A[
M+T!E3O=B7<#:U,V])B7@+ A2*(Y)_X.5,?11.VU5VSDF"_45%^DR>8N;IBJT
MG&.B9&D7*?$QQRO]?M TGV/*]PF6AJ+_%[X8-["R\52JB:+RIJB.B#]/-"5=
MF21A6K4F$^N:'[]_6H+QQ:!G%DTFOD%S!)85L'KYN5\Q42JN3F7SB06[_[OS
M4SR/:"^#DBO$NFK+J54,#7RZ2MVH-E5,533<#6+G?2$>M&]7SV%4I*T)1795
MICDY3KAJ(@,\J?1__^'/?_WC=W_P7J!F+6[TO__P_1^\788GE+S0-#[XC>%*
MWU)6:*=*YHGG\91DB+0]#,;4#'.,,S]^=[J<J5@#.4<^GBY'U*9(SICOAV4,
ME%4^#+;HS9^<-3^<*FN4YE;.E3^?-E<J-E[.E1]/FRL:PS+GSD^GS1VS%9LS
MZ2^GRB395L[9\?.ILZ-BI^=\&5CJ/3R^U%P#C#,_#2SU'BIG)%\$Y\W \N_A
M\*;B^N#\.%FQU^QUX>PY<=%7]O!PIIRXY"OZE3A+3ESLU?JS.'].7/!M<)UQ
M+IVLY&OPSW'>G*P8K'4'<LZ<K"!L]C\R]OSE9*5ADZ^3,^=DQ6'9L\K9<;+2
M<-VKRUERLA)PW9O,67+B\J_.B\W9<[*RL-9CSCESLE*PWD7/63.)Z,M2A:HI
M.6-F#!5)T1>+N\?%[<WEV?+J\OSL]NSNXNKQEZNKY>.7N[,OES?X7PNF39XX
MM/:S)\) EB%' RU0E&?\7\J(BR*)CB !L,.O22DRMQTD/*3+U%D)6_B/4,;V
M++_PTW0?QALI\;9"BEW?V4@30#;MEL;0838BS"FWU;VE;NS""D 2+?BZGI,(
M7W(9[!<L=%JOA[F["P26I3'MJ5+TF8^4)-X +"] _-7K@59I4#>>;?*MMY:+
MF^F>O^KUPC.5V:M:SLA[]JHOU@7\"=:PB633N H67>>[>BE:L\US/O]DA2*]
M#3-6M9QMVE6DI<I<BY]GFV")C@=BCOGY5;>=3[13U#72U1^K2G8V7>?;ZVH,
MY\97J[G?C&NEKCA66Y=*L]DFW 8^K4*$5=<97^$$;Y-\?Q_Y%-,"2P<O\$;A
M:6J?8T.7V34'4PD*C?Z@[.+:<3>3TM#)!8VA63^8;YI*%/G&"[:IUWQG(0A"
M:CR#(D@W\87_$I:8I[D QE4]$<T='3D7#P!4NEA_R>BM:G4LJGV<$E7(E!JO
M+)N>;ITB,SW&+K.*)PU%X!22BJ['O$J2TOYBTI74'6;42'(_C%%PY:<QYFDF
M0)!=HG6X"O7J26/'V8BZ9 :-HEQ=(1IJB#%TF-E@8#04S&I=>L%/V-4[(-DB
M7LI(\D;HK4V-/6<C2U^?V$Q4<[_92%JF!'EYWZ@-*AJZ8'^RNU5K;6=490VU
MZ&NZJZIMUZD#A.2WW&-*YM2EQ#J;8JNN+N@_2I].1U?0K&JV#0(HQ^W4:]ZM
M1IGYC6LP([CQ--3+*_.3T*R$V_5UR-]E[>=RXNB;]X_=8SQA3(]R8YM*!UA&
M5;" G^,,A-*OIHESNGB'4V.55;R$5-[2P.938YX^%D/BF";BX22XU6YS*4,3
M3H1/]M$-TCU6<<6?!+,,00@B;TK_X$EPI9DA&KGBA+AC(1EH(C$8DSX>-9/:
MR5!V@1^GQK@^$I5*H#@U_MD)51:Q.2?!N'9;K1[^,P:3' *HZRM>V9_KD]AM
MEH*77=#627"LF5GF0+ 38E(+JXTZUHSQZONCYE4[$:TIINW46-9'.!N)6TGN
M1XYRRTX4:XSA.XE-UFY;V00*G@3;+"6*AAC$DV"5!9=4S#PAWG2T6=0B0!G+
M?CAJEK43),PAIJ?&L-9BA#&P]=2X9VGA,031G@3'VNTPFW#=DV";I41AB@0^
M"3[9NHM&8H=K:H^U!&$5X,S+Q!SU#FHG05A$4)\:UUJ+$18&Z.-F7CMVJ2+<
M!V737RF;8K0A6]HA1MGJU>IP^I/82]8WOB9PGQ=%.&HFV=WQ[=()3HUQ?8S.
MFN2%45CHFDC6TJ3:-D'B)+:AO6M-*<#^=-0;K'7(N$V>QRB<<VU;]15;OVXP
M\[5? _@=GTUN [7>$UX_HSQ<^07@SV&@MAXM<)T<K8]7:)&2"0=$U;I'*2DX
MIR'-LK,CQ-'2>6>[_!F?P7^AP(JH6B>GB+G)LETK0E@'%[#+6NXUFYXND&6Y
MRTP]W"'#N+]TK=V9OE0FTXX&L8L;J YLBF1V&BKT[=T0H;I&[MH^3B>1_#(,
M$^O7TTE$IP[)/'XIGD103E?&63WT)^&C'8"#VD-[W,;]P3A7.;'';2T<C&NJ
M(N/';A'KQCJ#O#:*[<?I(CV/2_R_GZ_NEH^+ZXO%Y_N'JU^N[AYO_GYU<X?_
M>G6@97NH\Z$@N,'FHVL](Q#D*XIWZ!IO=U7T;)'9!1X$_/\#/?I4EY'FA[UE
MD3Z-]0ZT[>>#;T)1!"EW*,93B\[BX"S8AG$(TX)*<FRB.MNC7>?Y$!E9H",7
M"1N61]O<&0+._2Q<6<Z>MIUMZK\BR,! P=DKWAL;5K]RL:Z]_9=AM(, U#!;
M10E^Y= -OM2:#M) @SO/'--ZMQMC1JM9AN4=2.DE@0HH?0U7*'M,(KW=3]MA
M1DQ@+#]@<8U(:OB:VR9I'OZ+_%5#A:F',]<).QZ6%PIO[=JI8?.RM<FV'65H
M1%5A)RS6E33XRI0M.LPO^Y1Q,TU2C]!R_FES$<Q65)NUO@W">S*G[&/ST<.1
M:YO/"\A\A[4[>2.89<N&3C-#-,,FYCI*&._P]-B&2>+L'*V3% D1H5?O6-S
MFCK6^=,]D4 @D!:TFX3(SWS%C-K>.%^<'^F:+>@YUB'6VGH!NM:S31^?I\9[
M3V[C@MOR,GP- Q0'Y9..5A'^CX4+5M]UWFNE(83S'MY.+('E>1H^[7*(REXF
M-%#(=._T&'7.=:[.N0'IV]3##8MI@UE,3F[L8((Z"<]NHY5*BL.TM >=!.>:
M[$=2[IK:5',2?!K6UB-RM:6AY"2XW>)2-!E?3B(PH]7=9[3RG 2[^EQXA3'I
M)#@U^96GMW*=!+];7'J&,W\2,556=YZ-+?(DN-5E8XFJ_TD@7[1Z1A4FUI-@
M4HN=I#?IGD3D79LSUV [/HF8NU8[:T3S]$DD9+9FML*(/5U8WF$PJF(N9^SY
M^>L^:E*[&*?^>N38^RUX-93BQ;6FK[:B5GXBSK:OVN907BC.T4'5K,,^XT97
M%N?7!,K$M#'O9;@[EM*2* P@I:GXQPS?<36,C"^QOPM"(83K,*+="Z+PW.B]
MK LPKC?\6NBV$Z?I1.!@)3'LIK/WL)'IRC[S!2_*L[E,MGZHB[Y4MW4A!.,S
M GFE.=Z"M9M_XZBN'7M($D/?^4E;4I ^,PVTT7R3;09*< ,=05.NPKC?S7V.
M$Q]AJH0L&>K;N R:QE^#ZSIM%2.K]>V_AM&Y$49G@1%IOM.L^\]X5?]SE]%*
M$\M$<P>3"^S)SU  !.#9$UWB >$W/,,*!PLEN4=8 PL>T"K9Q&04AJ"LN>U'
M_NR\J@%]@"]W*;Y"Z03)K,AO"Z*69E?O*%V%F?XE;SV.:R33=V\ FDT#N48T
M69^R)C1I=?;FIP&YZ*Z3=(W"?*>7'WH/ZQI#Z.(-SY$6XPZ<M77O[\G%A3]!
M)O& 7G;IZAE?5)GJRK/K,]T<E>*K9:?YDBZY%5I0BZ'>NF;/:)L?HL7H'Q]_
M.!B=\Q\?_^R4 -Y-5_O'QQ\=,93KK:.6@,F#NK1>Z,V;^VGNDC?!RK I^5C5
MYL,Q6!8YQ">CU53C_N/ZS4E$T[<R=,H'4#8C'OM.4IM-E1Q1G\F389#YWE9!
MQ@WJ37?TQK:^B1HLR2<1[M[BL F[;0S6'-X):X;+&S34XM"/F\Y5<!+1_W8[
M2AV^>-RXLM;[Q^ ".0E&V6VAH<+$CCLQP%Y&L/?2G 3C[#;A^(Z?DTC':&&@
M:><4.BT4Y"[<,_J73B+KHO_FL_/+C)&CX6!4\@"[L14_CSV3P\Q/2U_:L+D9
M[E9@[L>LBE([4$K&H7*KV6LX;*+%H?-)[7,<)[N"FDBNXD-D4\7163!H4'WB
M@!ED=*@6W!I4(=!SR\DB%6>/OUS?+GY]/-S2%+#$D -(_GL3%P /3&5LKE9A
M.\"<<*25.9*M'!!K!$43I-6OS^) *N5L2;'=:'-&7,,;>9\F\'@&Y_LO6*$2
MUNELE>-GE=2S-J]UAX%FK'B:K,/<$&,N-)@_666Q!L9>1\E;TQH8N[BVQ6[B
M5ZP^#;#%3 /-M\68]+Y,SE98QDH1GG6P@PE2C"7MSFOL-]^&W+V\1&1[^1'?
M7C?Q.DFW5#9IV)N6O6<'6P>;:#/&.F_E1B@_F&/C51@AR5^U3(:YVD?YU)R7
M_VN8X2V'%6OJ0<#2)[WLM<^ZN8]K-RLK,=?_9C4--.?ZK1 *",K1N1__?HF>
M=&0IFSHD:>*SA,)7\/;9RY-B'R?6X#(DSR\8.Q?K\UV&54;S26KL.7]I I3!
M_:Y?$ZG5P,'\]26_9"JR\&&L/GR)4^J$^Y?P"\.A4@;\#S/PC(FM+TPV6JQO
MDWBS1.G6</:US1TZ__<IGF08\&5@6&)X"<@;8Y03.P[FVE.ED!!ZZY?.$:E0
M4'IK.#/GB)Q7PP1,V2+UQDX\7.1</#XG:=YPE31T&OW^+_;X+?S=PAK5?9SY
M,%[6:[3*%^NK]]6S'V_0@Y^C10R' ?X/W!2O?@2W>>ESA1_P].5_$%IB!M#"
M'Y=A]I)D?O0I378ON <@PU%X3!24Z)B:Q7=@8DX4/\1_CI 2'U_)-JNN3L@2
MUM= 0R>'Y(JSU2K9X7G>^WL#T$USO_E@D_H<+QJA4:>.'3KQ(-/#K>'/Q).8
MC=F?_# &2\8B?L1S+S4Q#5NTS8=.:A9>78'-S(MRO8L#=5JS13>'CNK5]B5*
M]@@](!+2VL7#9!CB, _P, _W:3S1'"5]A>??IKAFO?W QU=\+5L<7YMNHPO<
M^!U,\?H^[IY6[,-)RA7IRQ#+-3F45[*4NFT'^WI6IYG"/WZ:WRL(17WJP6H-
M+D%-)X<>,[;5A1>(;_12]>SPP+4<=O;5O4[2,E@3:XXF !!S'X?65K)Z$_6
M1#H+_UQZ)JQ7MM6@3AB-A/4B.U#A(K.P(MF,XM#:]S_"#IY6>Y]G;Z>I(V&=
M[>/Y*B5/N@7*#8K^X&[P=?=(.I'+8FC:J:&P:,/<*AG9K=E\$HSL'F8G[;_F
MN+43.<\MP]U41=Z*4+*3V(!C1J15KDA3 -=)\+I[Y%>%DXI0JI-@X-"RD!3*
M-2@:C[LWY# 2SSC7QFEA1?63G8PBPDDP<B#9R28J\B3XV4MVJL1@G@3#QI:=
MAHPL/>W7K:6(I8]:/1$V#BUHV<7,#@IAYRYSAY' VL3FCH(-Z%H!WX'D*N-5
M<1(@B\/(56W"JD]B?TYE:=&%>I_RWNUA8E%%FIX$*[O) #VBX0>%'W7W^6_[
M3CD0RWX:R+!37=!V ?HGP?+AU37#=7WL%\O02ELM(>&TH'DMK^>ILQY&6813
ME97U612#LMG=.Z/?!6R?\G$25\?0%[ IS>2TD+NGN(N["L4C8"4Z5YUDJOO8
MD!@S*+>/^D*V2N(Y$78.:L2PSC ZK<( #E[.__AIG$5P$OAWJLNYS5DZB1,P
MD+&Y(;UL4%8>VTT]7%K;:54CL;RSK4."3H)[PYYW3<+AH)P\G>/>+M-QC&HY
MQ[I=V^91G@1OA]Z^S0_3H)6(G./G,'NU37;H*&Q5VM&GK7(!"E&49#L2 Q)B
MJ?)>&/=CP;6#J&6Q2#=^S#RB%UBM2Z(P\)FW5"1KL69+[$>%A-.$GCS,V/-!
MR/29?KE'EGB-SR,]C,7@GW'CNAET8TD&S,&79;K$KAFJ\904RY:?P[JFF/&J
M8K)JN'\:.LT*+%2?E_V-8=_?C:O ;O&JADQ+#IW(X>6^!2&?4BC&<1B'6)A[
MP\E5M9SMN-XF?IS=)3G*EJD?%"D5PASMCVZWL=PXQH;E$\]N1W:=R#G^E"3!
M6QA%AW5R^:SQ8M[@6<:;$*\C#3$N26LXT^W&F _UE4W3_DR;>KAQ<CLMGQ3$
M96+*B9Q<$E:?'=:YI7-N.)B51O.]LY )CN0TAJSQ035W<N/\J9=!>C0;:#^1
M,\8\BBPBJ7 G7NQ28+$"8.\PCB%SEP ]A$(_:CJ3IA[SE=:3H]7YW"0/L/VS
MV74T-XZTQ9)*8"Y=67>L![\D%A)(?CBL\PQ3MI9[-8UG+%XBSJ?IE.I:NW$*
MS0LA9X1IJ#[6 U8S_KZB>(<>*( )S7\[I"/'Y@\N<FX*^S7,GR]V69YL4=IH
M3[+K/6/A'>,$FTZI=7<WCFW+Q903$6T9=:P'6WPYT_#5!PC2FQAS;$==9W'P
M"PHVDBO^P'S2UG2U>(.[CSCC0]UZTLVO>8\AW;@[!M@<LES0A\G'>L=4A <A
MQ.^P;I)BXM8WA:G'_/67[4^ZL8L;)]EB<90 B*=\$L]6J]UV1W)5J64LV>(/
M/:,XPS<81<<_I/-I)*?,K2%QQGCE&\YNU]'F"P2I3Q <IXWQ'TW=W#C?/1=7
MB@=I9-2)G'^2L/2<1)C83*Z?=!@'OCY_6,>&<]W0:;Z*W\IYV;_1]OW=.-!V
MBR<E-]ESZ%@/<.7L/ND*Q!_&^2VI6:Q%*AA^!DG.)NB(A$Z>S-*DG?<;=#X%
MW7;>Y^*\&W7TGJ.Z<5<,LU$D3;TOMX__AB&EB;*0!<,+4/N'=<EPB"B\RD]A
M3.$&&JX08Y?9+HC/*-W@#2(L2T;Q%%X2]M=R[1KOA8Z#N7$=V"RI>-B[<FZ,
M,_Z*TJ=D]E->402N_#0.XPW VY%+[[!.>'7V#:=;VWRVDUV=4=/AU;=WXWPV
M+8B$EJNG_5B?V*H6#F27R +W:;))_>V!'4&BCC4=/+G1;,=M"3G<NW1/5*BF
MLZ9I[,A!4[)=/%XZ6D_D;%W[8?IW/]H=V(M63%N02QH.E['+;$=--:NF$V?N
MX\;!LUD@\1@V\.%$3B/ 9(4Y=XI?$!BX#8I7!Q>";2#$VC?<;HPYO4K-T[3P
M,;49Q(TSWFF1*WZF5JP[UEM $'71!M@A()(=UKEG\\?".E1^B#=-KB9=\_F<
M3)49M7 O6?1TX]PV+9+D4K+AQ[&>RZH>NGO*T/_L\,!7KW!G'=C1K,R^Z6CJ
MFL]W-"LS:CR0VO:.',.&!9%A*[6T'^OA$QQ0 @21'ST@/PHW,=Q*AW4 "2#0
M;I7O4L#4 _]98QJ%ML.,F1/"G B^-7$'=HF.[C24&T>W>2GE)(HN/#O^<ZV
M\[M/HO#PM%V6;HI7E\^_.712UV&VD\U6HS*U/?W?IK-LV7DVXKX00.(L#[%2
M5>ZN"A&51K--]@Z]"8Q,\=G9Q2L*J-=F35H/,QO!]W#!T<IA#V@5^5D6KL,5
MO="+4@"7*%NEX8NH$U>S^-L.X\9CTGQ[B(^)[3&=[ODX&-95+P'&HH]?6=3]
MSCB-RL'MF-C^.INN-*I#D*A+@NAQ6)+>0[6^3P4SDT'GV"AV+4:9S^2R>D;!
M#NI(-DVYT1C3820WSG[')9>L-UW8>*SZGQ72ZF'>#0>)MUIN3HZ:1-!$":XH
MWJ!%J8%RTO9GO?V(7=D !>Z^Y3N.T$=*WCWNMEL_W</!HU7$0@96?AY&45E"
M4%B0QR0*ELGGW7I35&A3_;HB#DL\!IQE H_!(#&R17R.GOUHO5C#(,3<4^[L
M)/\-Y>I^2Q-K#YR8L5950_+Y+A^(TX-\8*H]3>H1T@FQ".X'M WS')\V!!5N
M6$5HLED$@GILO&&^.!-_Y(VN/T3W*7H-DUT6[17'B?\(/XG7NLB)VI?I&.SU
M+[90L:EH3]1G)9RGS179S@ICN]<3>1*&F 9&'OCS=1J6HE9K.,S+>Q+&HUYG
M8Z W?3H#TY$PVOD'E"_IGX_</L"Q\ _1(G!"=1Q*$:E8,&LK0;V'&_=)[SH.
M1J:<B'V/8>L?X.D]L&H.>!X0B634YIM:#ZR)5\HL%*H2W10<BWW_V8?0J'S?
M;(CH-^#0=H;B=!.\+2%FGP5X+1/=3&UL+L.-[L9M:E.50[.'3T*%UO-GB+-T
M$AIL PN'/+#3::YS V#:58@YQ ?^2.K$2-;)2I$3*VF@Q0!NG/.6U6#:,.A8
MI7*Y ,PAGM:#K@)3;D&8F8!];G\VM1T=((I)'?@\+=:W2;Q9HG1;[#-[$BV'
M<>,2LB^&8[/X)R'B=F&9[=::3L!UK+#0(=[E1UY>""^7O]FD:,-\"VS"5K>A
M7=\9T2X4# >3*);%"B74BM N([EQC?6HIV2Y,T[B->C!QDZ[\%A?"&7AF$-\
M%8ZD?$PINURMU^#4?2T7YL'/D>QY;BDB=QC2C=/>LOQ,/R8>JQ9?!22IX?T?
MXK$_KB(5HJW)IAY+>PM=AU$=8(>$LWF^OX"T.'NRS;W=N.$ZU.OHNUE.0D[L
MP]>&77?\(J&Z"LI!/A-%L0F1DK.(?"TD)1@NI%S;FY@%9OO1(Z8*V=1&&?@C
M#MR[=TD,=2E00('&*>:,G8;><A 'B+W:OD3)'J%'E+Z&*]2TFC0*=!.'_T(!
MS=<F6#XMI/&!O^?(A3O*25-?T';;\S3>N0G9/OA!.?Z75%OMYQ ?TZ.I^2.F
MUO,=>A-@SN-3@@(:K$M6#F\ZP3@("!Y9MMNBH.5+.,Q7'& 7OCK"'-WB;5P+
M;BXHR>[]-%^L%2MOS["AOC,?+AJ;E7#^[]/D&D+'A BR1H"TEJ.X\22UK2,U
M^&D\B8>_.Y<'.\0G$1[:EL^M3_Z)!(76*E(=H !T\"71!%F^,C= "%P1$37:
MY:T%G':C.4#^&7Y= I@<O@4?T8H%"UV]0PXF2S_&.LTN9XI,VU)R(WS(C=NP
M30VZSIOM)-[O;IP<;M\>J^Y=>7:*$E&'^-X<7\$R)F9*4OQGXFU!P2)^@!W-
M\,[ODCCE?R7PM59/T@@?<N.ZZ%P:;4".'VN A*F2TB%>&P=?3ZD*LR$$_;')
M9LOD BMB210&) >OL6I$YP'=./YMJB_UX=[Q'W%%_8BS( @I:<+!OT2Y'T;3
MGGQ-SKAJROBZAAP'2$NEV:=X/?&$T$V.MM52!1T'F2]<W'\)<S\".R"59K'T
MFJSS-WQ*[I"V\*.YTXP5,B)("'Y\1BB_Y4ZY]U!73D+;W"D"+I.M'^HJ*A@Z
M# RF4#5?XH6FJA"^(3EXRF>T?4*IZD2TZ#T;\\4J5N653<^N>)2)5;=EV,HP
M8P^\I+;7%)'+^MQS=(#YRK7L8&,5$XHW_&G6+):^_>PD4*$$V&E)@Z+#O%)6
MOU=6RC%I>+I.PK35].3)E6GTK\L8S(H<YY/\LA8H)&U>NI/88X,^C 6;6[X^
MQ[I!N[_$34>;7@-?^=;TCAC$@Z/VNO?;>5WY/P9+CW,_JF2]$PE@D*OPJ)"
MZY5Y"&BO5+XJ6298/F3XO0V-YS!!#6"\43+"K(HV=)K1$J6<5W[AI^D>W\K$
MP]*.IDK?>6LR%UN-8;-IS>>JMK.N2H6MM1)9\C\(+0VKU7U,-V1BNZ,GJZM6
M^_LD-(KVW-,<H:,6T/KMM1ZG=A0I ]YBMZ0,=64[4P4-_/-!"@H'6OE.6]1!
MYPW1MI^-!$C1>@/5_#I)+Y/=4[[>1;Q&43E!LTC0;HSY2*U-"1^7!LI,7=RX
M?"TK4!FVZDF\Z)9L:GD<!GW>_TI9%P.V%VM[8,PS'K!C?;2MW^OV5<O:%2W[
M_NN;W]G5W*T:F<KGW'&DH5WGIKW5@:I>XSGTXD.U,^NWGC2>;?+W:;)"*""%
MQ!1S8P'_U.NE(:G5$$=VHO[QYV,^4__X\3!$@UY;80S!](6 3SSF?IH?D(0U
MP/X;PQ)UF,QL>AV^UA3M^((,6R3T8-6A?H_6*&4YZ4&]B@^.C3W?2,[,'Z=A
MYHDJGC]\53P["Y7B!:LIQ:R2'6VZ33339O-WZ^Y'IHH<T'UKM1V_&HP[[.G3
M< 5/H X>76Q9YW=\\(KS'[\^Y)T?F1:/]T0/-OV,\ $AZU\_+4W[KV;0\7?S
MB[\G8;0$S;T+H:V&<'BW#6^[[7\Z#\KB.JGH=IA60(M-^]5D.H@Y\*LAM?7M
M_M60:G5$OYI+[>[]KY;0J32H XO!X3<1U,,AN&")'PO7TJT&1*9U]^F-IM24
M\("V88XOO8XFU,H@<V)@'6)XM%2=JMPH9)?@W<*2L44G@PK)H^]H3H'E?$7[
M&>8&P%L@W:'@ZAUJC9"[AU8]H\&F$KRA#O*G[1 .Z\N.2"AM7Y,V7H?J??[5
M!]'_9CQ:[(6OX#.C@<^TOGA/XJ#VE'1.&RFE]_,QO17OF#>@_3), I7BEB7!
M&7C8KSJE8D]G]WZ67^XLU<C& 88E,DMS@4#\MY(X_)=_//CQ!BFUE>JODT[K
ML_\>;G=;[<3DW\</W%(HT,:FTZ^A8H;R;^,S2:FD-S0>>%:?\4%"J7BR=NGJ
MV<_0V29%!'GOUS!_!L/IN1__KM?2.XTS7VV+^I4")F?\3@8WI$PM3)C=,4W&
MU6YC.1&G 0)9&20<LO*O#> (+088^@257@ 4R(:&9<+W6VH9/M!],#<DR=8V
MA^9W^%@5%\VS#6Q2/)TGI@C;BF>FL-#CUGN5$@/?/-*^.E8.V,DOQ0[I)E.<
MQ+GK)7CH(GR:GO&CYJR- F*ZNT[%=MSMQJ_<?<<*NCO8\>PKIX[!X%>4/B5N
M'-9^F['G*HT1YCBS&;0"1,BK"I3LO7B&PYO=Q!P=]&P+1N/%FC<]2)MH21\G
MP\Z2*+>>+UZC7F[<%&^B:3W;]#D7FPPC]7:S3[D01*GO!,Y#\,\=O3":R##W
M=6HSP1^QI&V. 6KL-[#UYNKQ[$+XF-Z4J&XX^][!$G:UHDMY\S:X9MJ-,3NI
MOZ8@K& U NL1$:DVF;!P'[9IOL1A$ZEV8PQM(4R13\IL[S.X<(A2%&>[B)Q6
MF[W7;H#9%^HZ25&XB6E4QVJ_3/TXB\BK_0F?X-LD:[K4+ 88.IX.;7U\>Z[.
MPSR[O;W0+X6ZX=!881'^!BFN@4]CL@KQ1C6$(AI:#[V1/_]FMU]5[0:?RR?+
MN2C:N:9O* 5&*:Y')YP=M16E4;83660I39T$PZS%K\(ZH)&#3I9;NCC/9L:>
M!,LZB9]J#V#E[CL)]K6X^15WWTG$)+:Z\RU5@Q,!7&]_^[?44+YNP"XJSTDD
MM+??>QK5ZRNWE-PRJ8:#YOV[ZZ;I<+TI]=8Q<O^/8(>I%>LQ  !<@$^K^*IN
MD0]Y24<3IW^+EQY1JBY1MDI#LE0FOY2IQQ&%0Q]5E'T8FZ/LI=]G,P^K=U9-
MO++:C[?S>^_HQ(JRVF2&#PBN5/ZW)4JW1JH:.\]('+D'S?ZC2J,CS"P9:)/0
MT!#498LT='5L]\?HS8]:;_NREU/K5$SK8XL5$CHYM38+^HPG5T0B:;$\E8X.
MK5 +D@S=G%JE*RS2X%FMT&+=><'T8PSL@5-]''8^YC7Y;/T:L.XV\$S%Y<^$
M;^FN8,M.3FT=OM9\IF;YOJFO@\?<CC!S3Z=63'%0NRR><1BG"'Y 61CL_(C4
M@O^T\U,_SI$HU;>2&IK&<F@+]R.\W4A.K;BP-]4S[[;/-6,-_&K<[4!WP*=J
MO0Y7Z-I?,5"0"YA-\"6K3MZRTVP+)+/S9OOBARD$11@"LHQ=9B.DG,=B32;V
MG$0Z"4G==AP\.8)E=+W+N1V1^2(YVI%JNUCV=,.6;&%,U&?G'*=#ORF)5[;,
MG08K9DE(=88-+:V=HC/9UJ)X(OQ362#K[-)<1R?"(ZL+V7I+'G5<1R>\A>-D
M1>\[JLF@_95[;6YXP6I^$E$O VT[T3X_1NC+\?#-[ HXB3B80?:<AG,3!,4<
M(N>L71N,C3]]9:,0AF7E76&<^\M7S@F<L_#V,+[]_)5O]L^%X)M@[/OK5_;9
MOAAUYGT\1=5TB%=#P<JO>H:5GM'HA.+\_*I^6*@?UMS\JI2T.^@Z3R'GYU=%
M191V++R4G'%?]93*1C1[1#G;ONHE%;9I_*^<7U^U$?%\VOJ&.?<FT$GF*HI!
M-;*BG";E!G.1DM_N69';+S'FQ5T2K^"YC2+P9Q1'M:A'PH8[T+2<N</K>P;V
M\!HY>[YDESMTA]GZD$3XTYOE&XI>T><DSI_->1W=1W6>'3<QF_9OR$^7;TE/
M/M2&.S &X(^WB?:R'/"PF'"=[*JY*OW'.S 6A*^#;@,RGO,L.%L#]/B@7% .
MZ3PC>A+M*(%87L%"#J!-@42W@G1K FC;A5KM6([$C183M0H9+5N[-GU6<[(=
M%;R3:\2 K-R%'J'?S%6/D%$ M) G6P_C+,%F>=&VM]OD&:1!^_Y.DVB0]:R[
MNTV@7H:Q[NXL@42ZZDFE/(:SI':DSC&"6HI@[<9PB]0V)#DV=;/09>SB%B&-
M E=3+U>,V79!]CV,?R<2B#\4'^M6PQ.)I1Z'@53./)&HZE%82.78$XFO'H>#
M1(0\D2CKH3BHMIB>2,#U4$P<*;0ZR?WHB!BF5QT&#:]V%R^ZF7]:$_ H@=2'
MM[^:;,QC!$P[B,S;F5&B.C5*?/1!,JN]9?Q4 J+[<JZF7)VZ:M#":'\J8<U#
ML$Q2GHX^<'D0CHER_M%'+/?E6,5-<2H1RWW9-E:L\N$)KBU]*<,&*1^R1J3Q
MS' &#9L:>23[JJH.??]5Q&]T+G%6#2K1ZU@U:^D-EBC!,R+.8IHSP38-9TZ(
MLK)XFG67@TP2P \69#X 6810/VK*&##UF,U_>HE>DBS,+7W NM8#(S8^(,R6
M<(6?G0NL.@.#KG=QH(1HU#4=!T-2*#BS1*OG.(F2S1ZOYV.RSM_PA7,;KO!>
M#^/-19+EF9J7_<<;A[:E_T[VYDV,SSM<>_<IVH:[K049C5W'F7&93OD %P64
MN^39JKGE E@/,1^<*I;S\$V8L]O#?#XUC6>;/./R?9JLL9Q*7L-KA#3K8MEI
MOJLR? T#_.AD5DNA:SUTH6T_>[Y(H@C!%7B7Y+^A_ &?O9Q4V>3%EM/%^CS$
M;8('M$+AZ__?WIOV.(XC"<-_93'?9W>[>^?8Q;LOD&=U+K+2B;2K&_VIH91H
MF].RY*&DS/+\^H>D)%L'3YDR2<G 8+K2)FE&,!@W(Z@48EV*X8O92[DF*D5%
M,0V50I(_+IYD^[HHPZ$%@@4-6T%':JK;7%UD%EE*BL@2*TBS2$?2P=1YBMLL
M4I,&H%.N*\XB)6D YM1UUEFD)&E*")XR/(O,(TU<R73O6=1UU-5 >"K^&*4<
M'72)ZC"T,RR/611XU"0]F2$SBZJ.PUB< %V&ZS@R0SVV"O;<@_?\Y&TG?WGI
M2'].DPTFQ!T!8(5_I]WXO/LXGSW8L%.%%+%\3H.$V;^6-<*B^_X]QTIXC@I:
M&4W2K9DWVI'MU]K=6Y"#^P)A:^P5X+O+:QZE.-D1X$1=W5DC[=72Z%PQ1I-W
MX5"K^&X$+,7!.,Y@BYN/@P.([E'P*>0^\O&.T/M=@-"!5(03/?053K%W S!C
M7*SOL%8 <^$A, 8Z@OUO2;!+40[_A4FDRA:J7#18M:)#LZP@CAOJ<W@!:@>D
MOZI5+K:J6)/8B<X:Z<2VI:^8.8.=V+S"EAVQ.<3ZY]'<[7+E6<0D).IE.WBC
MILK-$&_\EF],56LV&.(K:WS"FE4#08$F+B*CFH/-$DE]]JV@8L\B;#J8F7=5
M^1EBB\O"N4B=!9+4+Q_+III%='WPK1M@PAE%J+OO/S10RC0#9Y&;,!!)C-<-
M1C,0' QZ#L342%D'SH68;B+,LBDLC22J:Z1)<_/>1YJ: KQ*8CJ(0@.\X4X!
M\$P($HGI0#;-$8]OCV^Y'OMC(;9J\WZ;(I1^DFS,8(^_X1;5U%K"&J _@VB#
M-W(/,K@I>YT*"8X[W"*AE5L!T4U6[>Y$29(HE7RF1; 0_, (_@"G/65?,*9)
M@[';0[5?V@H*'T*VA7L!OQNXF&VB;&Y(A2H9XQWA?R_!3BS0N<,-BW2&F^G(
MF[A27C[)&II_"1 DW@_JRA<AF#'07EE@@ 5T$--7$0_K-0C)S5Q^!GNR.2'+
M4IEI%JP,Y0V0\%\G</ ?O[\%R8:]Y>ZW%]U6U1F.N['V]Y?'&(-7M[]SA&]Y
MDQ?4O-X"0=@;9FW#)$'Y,4X_*]$EO/7LL4ZI)F\P^T-3 3E.<0"0^J&:U/ 6
M3KDFE\TJI:^91D!DL/ .<P8[8>!ZDT;6MSX%Q,(9[(AD_984&8AZC@"-A$3Q
M"H;MAB4(,;.(%A\ )7"SS<OB0\3FXJFLRM,NJQB6#AB^8MCZWA%:$0K6WD"+
M?0YS$FBJF<6BR+,\2")9FJUTFA,\LC9X-9\!:"WA@"+T"+^3]^BG#4KUH/X,
M-P)GU\Q) 6XDX1)>;@0[,C$+E.G$8;5B![/ GBS*T$XT47#HSP)KY\4 FC@5
M.-3'P&3L%!+%COBC)%!PC<^"ZO@N]5;U414?]J3QQ7%_$R0Q7-#S0$67__1P
M-&DT*/C0FU>H[[.>!7:DP=TFCCAN\ED@BA?3X-'0S/1Q>1"BK56*?/US4(*N
M#YJN#YH,7CM^R(Q5$ZT;(YD%LN2N$['S8%;($L=V&,8LPYDP!S8^\+F.,-HT
MB^=@8KM6/<HU:63)C-IV^&S2J-"TYE@ANQGBAZ]_\]QP];O ?Y^V?-,)($@#
MJ3-\G,JO4\$-9LT02]J!*6DME#D]1.W16,>Q.4.42)1,0=[ +$J$FZBE<\60
MU)\WQF-F=PT[+22I!(3'J*;N(?IX+H8QZJ=[B!Y9M9@+5$1WHUKU8Y'CS^J_
MHS>PK_K_EH6L7[&6%,)]$%_K#&ANWOLZ [Z_:F]4"/D:8"*O>KV<Z/M(VT_)
M"R;5MS3&O[]9?8+X WQ-DWPK>IIQ]M*.G*LWK]Z\?3KC]8.E"53#UKJMU4W]
M#01H]9F:N/^=%9U(\/?F$=1@3./?YW&U\];T#A6/:<$]Z7.6] \1V)0TC0BR
MI"."?)0R_PZDIES?LIQ=(&^X^CL&5ITO/'BM$L[&T#6I[II4=ZT2[CVS[YHX
M8R#37QY_+2-^+2-N_5J6UNL8Z'3^8HZ"T-(&OF8T&,(F-:1G&- 78E.I4\?D
M*I1CL@"_GPR#-_ !D@+_)TPW"2U6CK\+-AM$>A?@OQ;K:D093O0KFEB_ OD5
MYMN[(LO3'4"W00;+BT)2IP4Q"<7)]FKT2?<G#)XJ3[]H!:17E$9%F"_0$J /
M&/)*43*'V=@H:;==[2%CHEL\UB;QA( 0 +FY))/I]G +DG"["Y"H4J)TFD,
MU?N2W0+Q-'< DJ9#B&;8 Z-B+;W-B6N*2F893O%X2 #:'!Z2#XC2I.S!N$8!
MT0Q"DFM#F@9AH9AA98?(2:R1"\I1#U[+7E2"+?"%>0:B*=8 6<$=P2_6C &"
M09S5(DY(:I))UH!98JT*$/JY+3*LQ6;9$FRHDB]@S^(Y]D I=R%D7NTQKMT%
M60Z(9)8[0N3V(,G$$<TPS'6_+:LR/5\(&TRX'3$D@UVCE9[-J48LS_83\*J=
M/&*#FF4=/'P/XX*^\\HRS%M M J^<V <LI*K8 NEA]I<PQ?G9Q#$^998$VF(
M118V+S8HV&7\RR.>8*_3!'F60XQ-H"2IN<.-\R4J1S&ZGO$L1>XDGN*. '@%
MB'P0;, /JA*@.66,PLWD1602+?(MUO?A!XQAD."_[](=OD"$7"4%G!6G&]XY
MZ1QZ&V#6)21=X5##.Z+OV\J'(VI$*YXPVJ72WJ?J5.,G+"= %2JSX 37\WNV
M*IHI.Q4GG?L@<T76KV\%7L!)XT?7C=@A,8FG;IZH$T?OI7ZT22--R>-^S#0=
M[LZ;-!)U_'T=!M=A@K- DVY\K7E;99[(62!0R8/9Q%K'3S@+)"DZ'%MY"\+[
M.PNL*?@UA2K'[))XF2[XH\ 4>&)G@1U53VZ3I@8Y2V?R.D,U&*^!SUG0HYZ:
M*W$#SR+]656751(<L\#8.6HMWV$_"]3)A*@D;# +' T1I>(@Q:31IL?QM<(E
M\WC;<3[_[S@L9X&V(4) '/::!=K$ D 2V)H%AG3OH\1'-(L'0*IJA1I]31M7
M _B]4B1T%F^CQ(3&U2"FC11=BI(KN*.\''.J(&7_T=BI/&5]XXC?B^JTSS!X
M)\6\(59K/7Q#)O%+23*#56<[]8J,'MT+R.\*1&X//T],.M,IL&I"/.C#U9MJ
M/->(@\NL<7NX)S)H"3>XK^;MDHGV'N7.Q.%N&(W]FV+4"?/?)1X3(D.KL?[B
M<=C]'<48].%U^4T4P1*\IV2=HEW9(>VJ%_B@%QS90OM8_P6B(:*TOXBW/& H
MTBX7S/2'"_S@%QM8%N\9^&>!=_B @935N>:-MO<TL[\A\3--[OB+5E]@- %L
MU%MH?GO1;7V%2;,!86]C[>\-VQ 2OO7,>9:H-]?V([TW0(BM[ -&&4<2@L5[
M#$MOC%C82N9>GH YQ4U.W[G"%H3/\MAC+TO<K%H%ZO-L$[57.J2,!;9[L/99
M8.M[VY@7LX2'[WL08@MU!7=XR&*]Q)]F:XQ2_%W9AY#WAM+8\FXCZ)2G<0X>
M&JNX#:[HP)9Y@/)[$JCC:W^&?\3X^]$0@2 #]Z#\[U/R+5D7\1K&,8B86V6J
M$D.6<</PDZCRK; U7VV>:I=W6>_MMNH[Z33=0>HV(]=9ILQ.&HE,+;C5U786
MM*1LB O8SRP0I6T&\#LD3Q-!Y\8PU' [:13*9%S;MIET8O)E9)R2A35[//.S
M)WD:ZQ@H<T$)O0Q5-LW:26?MGD5\IDWFV6.:2;C#3?-)YP,/HES-0[@< NTU
M%D?P R_W 4Y]$$C*9M6*_@9?TP^:NB*(UWK68+SL?W,"_%B:0UY>6V&F89?<
M_Q4)6'UB;!Z6A&I7G^EJFQ99D$3EIP]PLQ443M.9;LWS6M':/<C@IGS<(#P%
M[G"+33W+K8#H)JMV=[I-DM;+\ID6P6+PAB\8T\]IEMT>JOV^@;B4-UNX%WB^
M!RYFFRB;&U*A2L9X!\Y/W#"^/<I>OEF7N]X>FOQ55+%:8:8#I]#3[K@G\6P_
MV^*TF9>TE/N2)L6<X?;(*<BVCW'Z65U,<;,)YE@'<'_BE>2ELB9[/4YQ !!E
M'4LXQ1H@].$ER/(W+*J7G\%>2$V<P;9%64-A$A 29[ #)"0Q4/B=CE4T$<45
M#6OW-\4&&YVK+43YX1$B_,^N@D[;2O+U>[T%'#C$JF?A@3A]Y+RL/=HP\A_!
M.RH"=&A80CWLD;:)?.QKKF!A_Q+S4'<)-\);&@;\T>>C94=/.L*E:G6W^V0J
M&+BSP-IY-G$3IP(#<ZH)1!+#M/6.1L48G ^>F($!N:DVBRLI]=2TZ(IM%<X"
M41H.%N%59(G;^5Q%ODG.OI/SQI98-9.9U[.XEF+SG*$R,%2V^1#48"\ ^W:.
MF-/F$OZ&F$R:SHE)YVAI:*YB23'5M*S!*FO'(30+*AIR&W6]59/.I3KS.JH8
M[&/@SZ6+.A8-LAQITTQ TR!"GHHW!GY<(C*M^_G<R[LS6G:RAQ=;*7=/"1Z&
M$?(=9 _K-0A+WE1]1BP@4B4E"4E9;V]S[([P*$?E1#.LQ:U4SN<FKSKGD"*]
M!=[#H368 ZZ)E9U&2ZL30H/DS\ '=TFG$?&8(H"Y?FO$/<03"?.$07P&0J1+
M.XV8EY2PJ (/PZ*!O!)(,K#<8IE259??D4_H2%)R_@PT:?Z0X3"MR@Z_)2%
MF,TG^-O7-(.,2C;GK>4T(> /2VWT'.;06,1I8&G7CN-'R89J/-5SHS/ %R[K
M&$*(I0&3@KP&V@/$K",Q8 $W-%X%Q:>I_1I1,&;A)1\!L7P5919>J!$P*M=U
M9N&6&@&SNLK2+#POBG@^4PV;10^,$4BVJ=89;8CA;O'P$; HUA<KO/[U2IN#
M=,8:?W^;6A%VIK=Q.D]X)^)>O*_(ZKBY2K#?@@2L(?_]@GB6Z3<*NQ3E\%]!
M518#IA%IG 56*$A*"5DI?65C@_! XFJ8UC98C&8YWAUQ_)=;93Y@,+>ZE\Q*
M2@)7XZZ;EF*0'B]GY]EB_\L\#?_8IC&&,WOX9T$:NF!;(4U(%'RQO@G#8E?$
M1(TJN\GB[Q#88@(D\3B,."^EP[&C9!=@45E^X1Q[#K3V;H0O)]ECK6V]05OT
M;I8)%C?1/XHLE]9%4)SL G#]BU-R%W)]GB4OOK67L5<.OL='N!>I-]#U4Q)5
M1]!:PG5 7T"^6&,1*-&5AZ[F OAU9A?IM-5XZ@%>J0ZBRG.45K$&KLJAO!(E
MB<0.<@3?BYR0YRHMMR\Y?5.KFS9#U(CRKAQ$7AYL21G/["EY#"#Z)8@+L$A.
MR4:G%XVT#%CSD*NLG!I6P>-KRUNR1X AO 7KE+1U"N,@R^ :AJ5'Y<@3&)3!
MH[=AB[G ;'BGKLIF)/,MMD)HGP2AQYLTA%7OPM+J&G#4YZ_K),\5,T1>@Y!S
M5G02#0K"81R1XZ56_/M?'?&]*%G++?\ZVR:=A:-*:(\WD:1J_<X":T.MY5:A
M:\95&P-Y>RJ$:&%B#U'(KQ,NON57,I1;R9SKK7 <L\#N$-:H9JW/(AO+!(\T
MYABX8ER!I>J?V"S0*N4#3OA.YI&(:(2I#'3VS +!0X2>S&LTB]1-$Y1IP$UE
M%-?NYB6.K5Q(/6!&<VCGBV<E%YO17%MA3J/GF&8ZY49)J2V="@])GU@]S0LJ
M:6T+<LQZXVN2T#5)Z)HD=$T2NL8-KRE(<TU!:E:P;+D?:A?G*KUM6- @NB\0
M3#8O6 [^\./7%,M2 @SW\8*1Q=W0W%R.-[I4.^D::O3?KW#%M6,Q29<N^*3"
MD1XB5L@#3,ESHR$?[QU?CL?2G"D1V/?.3.?M[AVY,IBCD3;6!3I04$7F#W^\
M664_0WEC^_BOT];Q'[_38AMO8%^@<!MDX!6E&Q3L&,XBR6#;7B(&-F4.")69
MEST+\MM]]!;Y%C."?X&H;'_23;S5F6GYE"36<6>0Y8ZMCP&I3)$?%%IG=X8:
M?B+2_@W^NPWF. >8"1.!TN&&D;CZ3'\ND@BCZ"N,8U(EB_GC?.SJ+> ([4J;
M"[<&&D;Y0$2/B5[.3I^2NS1)2'65-/D5YMM?L(9,*JJLW_ _$ RQ^D8Y[+<$
MYAE_YT.6<4//E2HO1*F5J0M3M[\T-(TCNE0E^BP<*VPEH-63BT^'4Z<ND=)Q
M3"]DJP*3)AXU(T7,GZ;N6U?5O8YTI*D-39K Y)I3OVM@]YI.E;"T] ,1(J?:
M'TK[YNG<MVDGU&O1E)+N->G4;&U*&V347 Z%[OB@E\5N%Z #04R-V<6:HMK/
M.F%73[0=O/ODB=8M!G!"=141++,%Z(,E;E:I;-Z,O=%71ZKKCE01^9;"80#=
M5Q-GZV@=Z%@=Z$@=;:<W283/D\:KD[#L5W#S&:!H* BR]3Q2V*].8BTGL8:0
MG843YNHBOKI KRY0ISG\$)?,Y/Q^([+[6KF<M!/PZC<='V6..?R\1YE4Z[]<
MA0NKSM/W;FNVZ23QOL9!\A+L@##GKS/(L.&YV"7PO<C(C_"MR?X@>WX29K>^
M&X1(72/R"N;V<!KR&AS(1_3:R)RB!A;V#RD+RB:R+WA@GCU5C6"^H#0SCB7!
M+UE#6WVS!&F+K2'VSC?<@JB(ZSB1"/\9[P!$(1ESZ]MK G84&HMU<^MO@#Z'
M(>T\,[KQ]\;&,XE/_LQ%_>,'+P7A[G4X\N8#BU1RK(\IHA?7-%.0_9R]9_B4
MHO$/"%A#>XR]K<9T71"Q3Z%JA,:#06VRNX3,94>GT\%JM(J:-<I/V0LY[O9Q
M>@!@"= '##D]CE_2Y ,;'J"$(%N1ZE3-[PE_>TGSWT!..J=N$I)"S(M>CO9[
M%LNP]&VRM^4W82T=\1QWKY&0M"LKM539>'T8C/Z$Z1=-0;9=@AQ;A!$^#$'4
MC#W0GG[:,?_9.Y>-=L-SR>;!1T\(PPR=A0O<G#G;\O>.80_.XCQ8)F$3LUTR
MG@52C)N?+(S.J(."&5NU=>'-G= L3L QMBLUNR<=:;H(F^E8]/- Z"A4KNIP
M&"/4]P'0>^H6DIFN(BVN,,B'46/WWR?.J,?D"2;NQZ0#VN,RDA%]5&.$QAWD
M/6.Z1]NE'(6NL!K;4^=%;BF-3-^<T0X1WA[$F60O<AK6")X[K1OB+%P79]U^
MXQ)X=BN]Z:3RE"*/FH @\C+!Z9JM8Q(I9?;O4X*%<4'O("WRN=H&"=-O:QIU
MNC]_39=Q-UW&HP2':V:/!=[Q*X";+;&ZL-43; #]\AYCYM@VTC)SD>_/W2.Z
MYJRXGG#!R2,X.BS(3\E>X/('3R.[@;.;ES0!%>3W$($P7R 9IF13S._PH?5S
M*5(Z4*5YUUR1Z3E:M-7N>810+Q^MF]PKXMDF!+B$?+^YC8*B/H]8MR>!PLD^
M39]4'-PEQ$XZR#?#H*K,E+Q&F"X5Q#,<7)HK+4M-_KH7_)6BC2!;P7M18?QO
M5XQ?)$K]]RE'J6]";)%DM.(&1M8]).E8,"=?3*8.1]D:\=A(]3:(RZ,&(,<@
MG^ \(043%OYCGV9!_ 6EQ1[;8V%<1##9D#%IDL.D -%BCXTR:K0)PFP7^G&;
M\3OUK4I#'D-7LP;^(\2*-'C&UR9ZPC<@V4!L9-YD&2#,Z6OPCQ31<EX" M%9
MP44P3UN4GJ[N*O;ZGA59CF\MHAXZ0FI;N!>[W$4SK(%Q6V0P 5F&Q><[3"IN
M(8Z<"Z<8#M4T4J%X0HB5IZ$WUSKRF_LC_T1 ?$GD\PP?P\U^'T,0/20 ;0Z4
M\6*^RP^4B88[A6P^R^6--AVZ37>8(X0PB+\&Z ] ,GD%X5ON8-/'S;LO/8=W
MZ]3ELUPZ_(?UFO0J^0#$6=[B$;P*!YJ+6 -VA8(([#")D J"] \B,,7"23S'
M--5__6V9Q@65',_/=P**9PYTB8KN018B2,V\ZO@187R8\ _J5"1:Q T%AZ&-
M*:LZW+GV4B6J^.DJK9!=GPG(1*7OI-.L$V9#)3L]AGJ*\*;A&@9'_-<DAJ_Z
M,_Z8M$V#(,/?%3L0$8\I_H)$(3^"F,"KK@>:_-%I(+- Q(55CL2K  P>GGD1
ME/)^VC S-[IG;,$3,Z(<RI(((_Z:PWBY"4-48)%0OJPF(IKF!#0&CHTKA1U,
MZ<(VOPA#TC,YP]Q?\"+@LGN8$JK+D92:+LT5RQ^=$C(;7UP8H[U?G@1:3YKK
M)41V\]?L/0RJ=BCPQ'92SKYE8%W$SW#-+3)ZSI)N!!HO&R!JAAX'1T^FGK8Y
M(*[2Q*MVO&(62=T#HSBMAEFBR,@LD*@25#GF<ZB'.,; G8,I2\I1D2,*A>&)
M25/<H"!9\[)RHR*31INAS(13EB$_C#/Q2ZL9+Y*0GC F,PN*E$0I95>WPR=G
M@3(#*HLD8C:+]S/Z8I<3QILTMLX6N%I6R_11:4QT" .QD\;C6*8;/^8[Z9*7
M9]_P2[F*QC@%%_P[9_ %>6#_2KHLTE5&^<3+JAH026.E8%RNU^N,\<[-UIAT
M5=4!V!\]\Z-^H'E%^$@(5TDIJ9]M7@]A=)XC2CBIWW)>C^%"K+]*G:C?=E[Q
M?DGR;R/_OZ_('P_YK>R6VD<R36?Q&1@_+R&F1NL%?$_.O0]?%KM=@ Z+]2L"
M,=QA<D6'UP*%VR #KPB&H.HD!#U]-7Y]V3O%E[T#.>R7-(T^81PS.>T+R/5?
MU1K]50=JL3.\]IC*&W^IE5Q77.;Z<&IJ;VBO[ZTO^-[:EZ?!%WA]\VN*_H#)
MYB[8PYSH:GWX1OPU>Z^(0;A-TCC='&CM)"TVIC;7.A\P<5RO*-T#E!](#:F\
M<MKO21#J N\%^+]]?7ON%I7X]X[D GRUUEW'YJC'WW&)E.ZPU@JC*J*/B3[)
M2OM?5GQ":0GG$U*N#S0,OBT8PSIEEY)7M>!F_/1HG%2K:=/T4!>!M8<,+M'B
M];F,7X'WKC4Y\0<B_CQL<.E2FWC3H&:_SR(UVH2 N2;N.Q:]%GA>)HW^B[][
MFF:RM G>H)LW?<W5OUPBRS2IU@4-]N2WNR:E*].VP-]WN>1R=S.$'O '.^((
MJ7.G\)#3.[ZN?+MF"UVSA1S)%E+(#NRQ"OWR6,]GQ\GG4!?LFM]S39"Y-B2X
MT/8;$:6>>#X)?G'2H]X:#J0PRCE64Q"KY3,.6=->+R?P >)T#Z*3>_&-<&@Q
MVY/-FG:ZBEN^(6]"[R[X-\[1\HR_(9EF3.X:4[^&A1W&V35&R</6( 60G5<T
M2*V:.GZ-:)W7%!DSHD6J]\XBY&B<)*T'U2=&IM> [@A$JJ?\7R34:RN0\Q"@
M!":;[!4@V@?]A.ON-XT2=J1$Z <H:_LNUHUF]5Z&<;J 2EQ<W.'6?!XO("]+
M%#[S6]VUQUC;:L<F?BD(&\,D1!"9+8H\P[>0T-AMD,&0 XK>&M9 Q>A&M%YD
M$)-JXFE2;O FSQ%\+W+"FU8I_8RF\U65#F\0PGR(SA-TES]W8=?.G[(4$/6.
M4(\"N*M8 [?+*T1DS1[KS-8KY"INOA[MA@(AX_!-W:##3&>2S*V#(4T>/H:2
M[SD&38B&66C^!LB2+UI&R75+\9GZBD&.M!HCF\WS"\P5CF-4.>7AZK(FXQO^
MO]_Y=N.I"OI3LD[1SM\:8,<Z[[WX7S?@WQ]H+Y<KR6%4V>5+$!:(IO<^?"<F
M.X@>,:%C0;,O2J3W;?N;'2E0RDOJ,K*V-=3\0E)3DXT@$Z<YPO8VA5E9[3&.
M$9LT U0ZS1I ;QBO"(9$32"^K&\)S+.WY3=ATHAXCF-GHWQ9;P_L!02W9\Q?
M-)QD^(0/"08Q_FDJHI(05#<*?P+3B)]NJ#;17CI;+8F$^6GM0?8HE'B*5_@'
M1#35&N.,#\0[S_#)AB1W$"19I5"?#,G;0]_.),@_G4 2D?>84NX^RD]90USC
MII>6HU 6\$:[8=CP%=I63,R,!CF+M"*&2ME$94>5FP5*5'7")IXD:M=,7*\7
MT-CD]WQ.J;],2^N8-*FH(\[B4K/URA8UM96Y66!%QU'8Q> L$"0GFY8 G46B
M'=/J:5'***IZ'27Z][E3W*A2=JK%0"YA1K:Z??*LKCI4-WLR9MEREZO9837B
M]!A ]$L0%XT4Q4>88%J!).:$17!!*?$K",CHZ"8_3EB0RB@%0E5.@I]9BHVJ
M+4? E)_E*DZV66*B/$CQ1CG0J<ZV!UZ]F:H63ZL&3TVP#2K% U[2!+6(5N3:
M-;>^?13='JH-D]O\B, _"Y"$!U$-%869+H!U_.?/$" L$[:'9_($10TRT63[
MP#7PGO5W*BX+H[6&O=(.C9[OSU6',U%M!]YPIP 05P#A3[ 7.J+L35_\R>>Y
M!Y(N* ZP@=-F,LF!"*?8"_H@L ]@KX-RJY.L. ZDOH#- AFT4AW9W1*@#QAB
M#8"M2A.[+6-_)60=1G_"< K ?64%-0W9IX24KZ,_^I3<!=EV20\L(LVSUP!O
MJ4"$%?+3 \Y?U/[E?4KV19Y1K>('(9&+9M@'XPP-^%F2[V?V-^S;6J>[)JY0
MR!QM_Z19RKZVJMF=Z118V9&4U"ZD:*HUP*@$Q/<@5):BHAD7D ;$3=FZV#I<
MGSW9/E4U>/6/VMS]QW&0?Q.&J  \;4GI"'27L/@8- =8Q\W?@APL/X.]\ PX
M@YVBHI^TJ>@GVV!T^(J,P)2G&;X6A)T$R6'QF8"HI2J^IC'6I$77076J&]$.
M/8]VI\B(FKMX%N%VX][E%JI5_++S0K.2*Y>)0S4_Z2RP*7.HMLI<"7R7LT"6
MLM^SE?' ]RS. FDJ;DGF+3V?C<X"O_*(0BNU0\.W.@OTC>&'/2:Q&O!RSN(0
M!D4PF4R#Y3Z=%PI->EZ5Y-B)F<\#T6*_;:=HH$'>,@_LJN>?R%3[GC=Z7@B4
M^^6EME'/[STO#(YLQPNMUUDDX^NIKL((QBSP=7%=E1.#F06R1]%)?YPG"L?2
M255=UU=LGRVW>%KO+.K?J0FJ8='462!P+,DEB^O. KFC2*J?YHG",7@G/\8R
MZ3;/1K1\/L.<-M)&5?654QMF@>K+V/MF5."I=C3OO#$EU9AA&2/!"+E+$U*E
M "2$-*=3X)04-F^!)GI:R!ELKU<SIBZ8/P8A(671LT#&0$<V+4Q29@ZU65@P
MB=X/SR GEW6Q+G<G3)<33K$&2(^,>^:]C.Z?[6?N=W#:*&8NK-\KG6;O7O#9
MK?+;/KTU#.=J=E#[I0BP.I,#T*4JR6##NZI+WR_V(&%?1];V%&:YH3>)Y5>K
M?2Q#6$R]NIE(UG0JB0A8^RP";G*AT/+Y2KGO3 H6#N+:+4QR+O LB(ZOP/(Y
MUUPJ,ZIS=M'5G47018UWR924*ZK:J%+1G"[GE[;5$W0)-H2[-_P<TW%^5+"]
M@7V*: E*L77!'6ZOV>>)1%% ME1MD=OXDSO>.@@E5@F+5X2!,<&>:Z1#&7=I
MM'O"ZN 'C(H@7I'+0&H>IF5;]@7Z@M)BOT"E\H2Y+ZF$^$!N0T::#C\DQ8Z>
M3\JMKS_:[SF%PE>4KF%.6';EI/XY_?R6@>@>9"&">TT$J:SFAI"2\:56BTH^
M"YB)"3($6RQN,_4&]#IX&I&A3;X^[IEH5F)Z8\1$>TAT1^4\57D]8NP#) 58
MPDT"US#$)DSU12/EJ?JDQ*<-_93CD15LFJU_JLXR70\%(A#FF'12A+'Y!N(@
M)\6QB>5TEV8]_4QMCLT.[.D.G$HFR^LVBF:X!H8PC"B>8T_CZU_JB@TV;O[M
MH?I2V,ULP$H6^PM2UE56F4_HS?T5YMN[(LOQ*:&R"CV1&QF^VYCOKX+O'+"'
MK&01[#!-B >3'@;9<WT<I$MRMDHQ"%D:PXAP#(DA/FPMP^RQ^LE[@(5(6.X$
ML[R;'2&\?]$_^;59E.<Z8XXU+E+/8R:QO9A331]&\1Y65R!%QWSG4AIQA95\
MDC/HISLCF!,&]V6S3-?L:M#K8OV$]:AD0]3]*LLL_&>!41D]);=%AL^=^%UW
M[S"APT5EO,Y?U>*QQ7BYS1>08',G)E<ZVL$$$@9$6H54&AOW])0FV_/4@;S4
M)(AMPG/.M<98VZJ L7(V+IIAO5!<=?0OV%JJO3Q<58\_P[+.BK6/:E>WF,+7
MO;P3V6B[UKVFY79ZT"@UHF81Z%:POMHO:816SM1#WV=81@I8G$?JTQEFUO'R
MJMSW65S?LXRWEL-S"&5/G525?#HGHE2V.V=!FCJ&:KO?\ #^,&F,#E5Q%&SO
M6:06&9+::@0]]6#EF>);V8\R"\K4$S FW#J31NL 1JGK()K%>W=#=[SCEQH%
M=43-=0%U9Y">T"<VZ3?69R!-Z(&[W#MHWY#&\?=5"/O+U+*E.P_'L4*<T5J'
M^<,'?1@SG83I-F0] ZL;T> -MQ<8(!EL&(?9:W @"O@]5HGN01CC:Q#=!X>O
M6 QM,7/\#02\)\TZ*]B+0[413XIS"!)=>*-=VKXPP84_WA40Q*_DF6/M=8>M
M]'JJZ9<)GI72+SX%^3SC&1@[+)A@> OS[/GY3I1NP1KH"FT(,YM80UW9N*RQ
M*W>X4Z0M:-S,&>V,]"J=&*\ +;<!MTFP9))U8!IR=)7>@M< :DIBA06L ]G4
M%LCK@Q"KPL/U#=X*;ICU,B6Q993JZ&.3]KXKJFXM9Q)?39HKJ@0E+M@*V2P0
MI:S1-8*,3-5J%M@2J6>2ZS>C#G@R75"$J1E5^)!HG*T*K?);.@N4G:,_=#7B
M2<>A=!D6EQ;GB"4ELE*Q3681JALH$Y]["0NS0I.VZ<,U#2\7G[/UZ'>!-D%2
MQ2.#^ T$,=PDM,/#=*(GQP2A-T"J8X=Y455;KO+":;:4VD-'^0IF?1X9RAL@
MXK].X.$_?C_FEBQ#D 281!EN-?XXBX\2&UBDN).^/.1.N"R^*_1]2[(]".$:
M@HCIFQ>/->R/%]#DD1/V6&+33Z^W@$-4HTPM-E];EU1 NFF)HU']@1;?TWT
MVA. (N\'WHX[HXR'F>KEL4VQH3E:(:;*6B%D!YS$4QS15O3E$5%@!/Q^ZIGZ
M<GG!?NR@@-^IHDZJ'1Q)BB_2IHJ;X5*S_9*A+XZFBC$EW:=]!_MB;QY>M&',
M?0A)3O4M@IGKV=-A)NUM.P]G:OK612K(*?I!(K"&">QX03K^AH&^D:/4;#ZN
M/'Z8+=;+/ W_V*8QQD;V\,\"X^%;$A01S&WZ.(Z/3&2YH?V!-CO;E'L1^E[:
M@RQNMGOJW WW!MK'<+D1TOLM36C84)"6*IQC#93.;H0ID>RQ_F[]=\SN@B*V
MW"4H32AI"[T8_7'V:)^$(K.G+"M UUG '&)MHR=/.Y&S3\E=L(=Y$ OQ+)YC
M#905HK53#Y0 *EJ@..: P1]OT<N8XQL'HH< )5B-8E?,D@R^UHH:1"I"5//'
M6P.A;.Z-634"6U)R^0.<$(NQO%BO@N^OY+D?5O_S','W@I:^7J6O5(_G 'KN
MJO;X6!@6NX*:'#P8Q#Q->;Y%5OV/(BO;+JU2#@^F#.P]R(CAM2,/\:@1\P;*
MY ]0-O0%KP#;4!$).V]*.X8VBN5R^Y%_UJY670K@>VJVEANDNZ+?+:AAF3U\
M!RB$&5^2:Z_C&LBEW#, LV@AUX"FYT/=%C"D5C8>=?,9H(@RNL<4K0',"[[^
M</:RKB&D/#SS&-%8UW 8[S4X4,:%?X)NX@WL"Q1N,:/*6"Q/;<[E]LA47Q4G
MV7_^TC#'[H)L*WOKTAW. .#D>&-Z-$].5K+Y*/\?DF8$HO_]4X[H45<?IDD.
MON</,?4S_.^?LO*1.\\A>O0;PB3_CPCNCO[0((XY7GBN.ZS3?K/E?Q*X-0=C
MXC][F%@'\:D6K3*H$74$_'G74J"& =WW8SD-.-P1#3!-_ARU_"8<V$6.KB8:
M.#X93S!1N8-&1,71Y>0V2N2W0NA\:[7[[+NX7 9]BU=&8?$._GRD"PD]\+.'
MQ10S!A;Z L(V6VQY"ST'69GF):[',=#PHVLG+_!9>@Z_,AGP?)YCP/^3:^??
M\9EZ#K/RF0O\KV.@X+]<._:SG;>>8TE=1JB[=<= R5]<(YSQ?<!CH/&OKJ%Q
M@.=W#+S\S1.\"-W#8R#F[YX@1L.%/ ::_ML3-.DXED>Q?IQQA"EZI4=!@C-F
MKZK;>Q0L.&<"\OWE:O!72:OMI-0+IJR>GO/>!AG,%NO79N:QZ"&OV3@*Z]>3
MZ"4@?.78*AV+KMYA-.,J^HL8C@:I;H"5M3I@ 7LY?:6N"O]5:JE%#M R7>=8
M)@ L$W@)?N))]DH,!C')75]N 5!I,LP=[A0 XKJ?_ E3 .+LG%?.[>XV5L!4
M>ZQX_R5-HT\8LU,O=6?;2P(LR.\?&4VRJ6J(<Q,"N>.M@U V$"%L4A$&Q@3O
M@MCGB=*C=J<IQER.=0D4O?.1I2H.G4:04I!<)B-;1:L$G-P33(B"Y&90,9D@
MN5QN']F*COQT&2O2^/EP6T!&/%Z'U<TQ7(&>XFG@U3QN6 J0;SZ)NLG4&P@!
M_""P$*:Q+':[ !W*TFNG)J>+-7&\W*5Q#$**)MJFJFI-A=%ZB]D+$="])3&^
M/V!:9/%AF<;1*OU:K#=/"6%,/UI[E7L3AJ0N9O:2YH!T:'Q.@R0[[9GG!M&>
M;K&Z45WMH+57NE&\X4>88.:';_9ITVIEUO16,YT-C-(0@(A2WC(@VRF)KDF_
M:?X;P-2W@WG>R\\?N(A31OO5=6*&EC A8YLQ.K;OJKJTWA4(4:=T\(X97PX!
M^YGAH"5,E^$*RF(F1[)M_")KN\+QWMGB0SDYNQZ5)I-T67U6,"J&X&PH W8:
M55?C?!1+5)NWNHP:]73N\U2N2=NF9W,>L;";AN$U1CSX;!6.0;9E26[2\?H#
ME/EVKT&6WQ=2LVG86@[84(R-9]4^U<PFZ0(7+9;\%B0;]HO_[K<7W=;7X#O<
M%3ONQMK?&]:F&5>286H)AU[^##E%Q4_?N4E68T60&0?#M#8E@PWOZBN^YP U
M+WZ5RW6S08":1:3)._&*W08)NXC3\'6L,<^NJ8"%_<EWV)+D'.:IL8"39#0:
MD9^\L"!J6UNKM"8)Q+#,F+L?O)BW#H.S%!JV]T"N'KALX C4=@Y7KRM4=P2V
MRT .L.)4E;ZCC<)5(5Q&C-@'PM0TZN-O488G,+)2#U2!]#ZI0$VZ'>EYF.+B
M*6Z,BP<=!<AIG D9A(KM)&*07CA'Q>S## K&92ZF7'PCB]$.)W89$Y=@)>?J
M^WZX1=_P__U^\HW6J6HG"KK;$I+(R!M>A ZD@CYM:KI8UT-M^TCK?<C\G_UQ
M#O@VZTVI.3+;H^TE%HB["'>S"CBCK6V_QN)1H2K#(H2T3V_8)40DGNO4R3!;
MJRN<47N>83_*P_+FKO%C?+\;>^#T$&R_EGU-VK\B(MZPDKRN&J6LTBK;H(+A
M&Q9%DNNAMH9IWQP"00X_P/*0$?9.5?XDPS@EMU.%UO06L'Y0CRD"<).4@?WP
ML$)!DL4T;/D%$Y2@U+G& L:;%^X"S"W#6YAGS\]W_*-@#S3]HC7&OT'3D&^R
M+ TA)E1!PIE@M&E"_OJ;&KVRQAG?RQ?%O3#&>>NFYNJ4;!=T1XMSV9P>8$,R
M==16P@Q/'W09$0HFI!(5*&J3GJ-"6>\Y6LX<#<]I/*AE)(JM']G%Z&#-$WP(
M'PT:1(@?CCC3O$-1Y?8<)?H\1%.C]_1YW""245'^/<>'/KUPS O/:Y?JXT%D
MV'A>GW, $V%:4Y[7Y!R"!I8AYV60XAF06FQ.)FP_XS,!Y0;O018BN*\0(@Q-
MR&99<S6Q-R8*5HAF7%-TW<S\QM=6F/G=^MXR+1ZK(E 2>P.$U]5_K0#:"<E2
M.GF"&?>&\%Z&T\$0K$NF.D90"?@,8FU*.LURZIR.V_I!XX0:DYPZF[+ \RI]
MH-J$QO%T)CIT0AH@":8Y=4H/6*SB786TJ,O  ^.O83BZP?IQ0OD8U_1G^VQ
M>9KAG3://VO\%H\%*TYRBG3JLZYW*M8Q97,=O.9J@(EG.G5BC(LZY/"$RS@%
M\!O(8%0$,:V&_J4(4)#DH&GI:&D-LK4<(N'S -=;R:D3;] F>^?#Z)RSEF&I
M<:PEMU[#$#P&8?5H_X[L)OJ6=3>O.,G: ;71^;3;!Q#1,O;\9!?A%&N G/:Q
M6-.-D=:C' C88\>IR$1+A3P6>>UEJ^)1=3$1%KDHSO0V%T31I=<,T@C=9BY'
M?)6S0Q0<@Q=Z4N# 0\RV_\QI(.?PWE >/1E\I>7>1T]C]/;?&E\P$6'P\<N<
MH)X'W(U=BX8/U?/8NR%2:?IA/0_ &R*2KF_0\WB\$3JY!$XNV/#2$*4(',J>
M=[[40)"ZM]KSII>Z.%'PBWO>W](PPVWX9WUO:&F4Z8Z-%Q_T6QWGON\M,(TI
MNU*_^"B8\D\'MH,G_S1CA8##*)AR4UM6#6.,@A*WE65Q,&04A+BI'$N"*J-@
MPF&56#64XT?N]RGM^QZ\YZ=7J>0OV]G>9 ]/29:C@ME+NQ/'XXVV%H1L;TB4
MU<T::2]*GR:;'"NB9%,K_#O"PAN<P8:CIT0O)M7T^>_C.R,<.?,GK$\@D.5O
MF#/<%PC+DE> N0(O$JTXV1G*$%0E8@YU9N,#2-I^ 9E[+& .(+I'P:?P/LC'
M.W([VA7/E.Y$9XH]@L+29;&^0R""N? 0& ,=P?ZW)-BE*">-AXD.0/#YBL .
M%KN;)*)#LZP@]N5=FM%^JTH'I+^J5::PJNYYU;U'P!&Z(YW8]DN:A,H[;PQV
M8O,*6_8WJTFBNC;-*J::Z'L&B%#@'DVIKASS'.K!A\[7$UW&B'(VF\ 0:GGK
MF.JERQA0JV@C4IM%\$^HALUY*)A,U1HY6U10]CW'P6 FV347?,\&4Z8%EK'A
M.?"#B6" U>)YBIP&JI@6C>?Y< /!;UI&GN>^#<2 GP$()ZO.7.,0]K<M\#4S
M!CJRZ9=@)_8U<X?[#H!]=_DUC&7(OUWE@QQ$T1[><*< >"9R"HGI0#9M:@ Y
M<$\9.ZS>0]VF"*6?V.2["_;XF_R@ 21W"6N _@RB#=[(/<C@IDRB%IX<=[A%
MT5!N!40W6;6[$^N7A"+E,RV"A> 'K8-[VE-65WF]/53[I>D]^!"R+=P+=9%!
MB]DFRN:&5*B2,=Y_$,9J:LSPY1VY%%<3D$^RAO!? @1IOS<2K1!AFC'0VJ8?
M 99Y0?Q8)%'VL%Z33I4?8/D9[,GFA,Q+9>:USJ7=.I<.%BL=>*$$LJ4WS-J&
M2=O&QSC]K%BI\/JPQSJ!:TWF95]79FD7;S#[0U,A.4YQ )"Z9ZS41!=.F0H@
M]DG,VQS/9@X%D<Y"IL09[(01[$T^8=]"%1 +9[!#FQ]DC=N_L-WX:)&!J.?U
MT$BQ%:]@O&%A6&!:7GP E,#--C]UE>9IY<K3KK7&6048<\SWLIJ!+(H\RX,D
MDN5@2Z<YP3=K\UCST876$@[H&8_P.VFQ?MJ@5,WHS[BFU;J=2B=()N1'1?G
M-Z-XGF! E$QX'@K&32:\YEA?()]6$ISDY<ZQPV:>X$.876L0(9.Y'CII4UHA
M2,_Q(C-\VCQ4(>+G-#X49>HY$< FP@2Q*$_0)!:\H^-IHNRGGT=UE,\*T4'/
M4<%WN3=)0BE YRDFKA6N?:IP;?I=6S^\YS+TZBH$/^.B"3TG5N@T"I2T!E[4
MEG?T$U($AH'NB6P?K#)V([%M35H4)_0$'[JZX5"$3(E0)OWX5T4-EL?'6S7F
M.%%<S]$@=T.)O1)>H$'I/HB#Q@P;D>&H\ 0+(G9Y/AHF\RC^C+? PEBWYV@1
M6\WJT7-/T3"=CCFFS4E6^&L^Y0#D*0PNX\)XR1QNY&=&50^T<D!<QHLIZKA
M6T W*T (LV1<1H._I;1,%<(P+R5%_@B76S]= A,J43N7NS^9QA'/'/.QA,JI
MAGM9G;[^.WH#^^! 3[\L[_Z*Y6((]T%\K:\RQ_HJUP(9A@K9?@WP-:,-4YHW
M['B[GI(7?,'?TAC__F;U">(/\#5-\JWH6<W92SM#5=Z\'YI >74MRJFHYC<0
MH-5G:H(6.RLZ\2C F\=4@S&-?Y\G;LY;TSM4/*8%]Z3/6=(_1&!=WS0BR)*.
M:%BC](VXOG^Q'CF;YY.'T0J #E=+7<:7OYZR:][)M=*ZJX'ULRP'EP-NUT+L
M]FFDM%!<#KRY@:C2?G$Y3.4(GJAYXW(PR[TV&+9#%/CXP.^G.,4;^ !)@?\3
MIIOR%_%WP6:#P(9&7TAO;CJB#$W8BTRP=]4[KJ[Q*9MFSY)F[TP8M!!-L5>"
MKDHG_A7FV[LBR],=0+=!!DNN09+@!)YGQ<D. R<,UBA/GSJ (U5GDA0#>D5I
M5(3Y BT!^H AK_ D<YB-C68W253M(6.B73S6ORW;+]J%"3@$A(8)2R5I*;>'
M6Y"$VUV 1,4<I=,< JC>E^PBBZ=-#2 '24\:^Q?-L =&Q?9[FQ,7HY7,,IS/
M\)  M#D\)!\0I4G9Z'.- J+)AR0SA[0LP\I5E@-$-.$/@ 0%P0>O9>V(5G!'
MMH5-.X @MJ-JJ2T\(<DD:\ L<[PC@O;;(L-J?)8MR]A.)F#7XCGV0"EW(;SS
M[3'^;-5!_GI[D.3!B&:X \8Y8F*LS@K?EE75D"^$X27</B22P=:07)G2CRC=
ML4R:A^]A7-"G+5F&N0>(5L%W#O*'K.0JV$+YH#;7,)W]#((XWQ([(@VQ4,*&
MQ08%NXQ/:^()]II@D%<1Q$(&2K*8.]SX-::2$J/K&<]2O,SB*>[PS5> R ?!
M!OR@RCB;4\8HN$P>B271(M]B11A^P!@&"?[[+MWA"T3(55)X67&ZX9V3AKZW
M 69=0M(5#C6\(_J\J'PMH$:TX@FC72KM?:I.-7["<@)4H3)/4KD40PNM2)#0
M>^]_THJ>4[]594K9H>P)ED3%(\9'TQ0J\,A<\?5+68%+V1/@6;1R-O13( %=
M=WOGJD@<P)[@1<))C"/&$\*1IV@HN$!:>)%YI#U%AU+8[9A[/=SE[3)ZU+..
M%?(K.JRWPYY=1H/:I=&*[#=OD"Q@X#1JE 214A2AB9*. ]P3#(A$SGDH\$2X
M#-5*1)GZ0G'D"38T=9&!Z/"$2.3,E!G^.HI:0?3#<[B'^$8&Q5(\QY-JDHH&
MGCQ_^Z*GK$KB.B[CP+A&JL2&7<;(R,HI/W;F.5)D0D82F_,<^B&B1ASC\_1%
MF![GU(HCNHR12_+1CFO-9;2,Q$S%D5S/$2)FI)(HK,O/(T>[(Q)?@,LX,2A8
M+5#&Y>N6ZG-/I1"GR\@YFT2&2E+G'WO>1!$LM_V4K%.T*]L:T*>>/PQ]Z\E)
M*I&8NST]KYELHCS7<"*,Y'=9CS75Y]G+Y2[>,_#/ I/[PP>IR").BN:-=FG[
MXK1T[GC_0;#SKI+1#J+QVJ_Y[46WU>G>V-M8^WO;2==O@!Q@61"?LEYLI2S>
M8U@*9@XAJ,V]/#%P7M:>OG/EJ@G3K-EC+TO#[78J?1IN?>\V#3]\WX,P!]$*
M[O"0Q7J)/\W66!;B[\HN$+Q$;&/+NXV@D[?J'#PT5G$;7-&!81,,Y?>=+I:F
MJ:+](\:3T$,$@@S<@_*_3\FW9%W$:QC'(&)NE:GJ#EG&N]3K00;!T1I3T\J=
MCBBJY:B(]?26_X:O4'J"!V&FB@%$>)^*,*'6Y7P@!S,&3>7::?3,H+.[BD=.
M9B,+KKT/*)!Z;+4]4!?J.';M.>D3KU,RPES&X#CW1*I:>!H"O0Q1-0U7EQ$U
M+NV8-GH]C;*>9\P-,IMG$'V[K\R5:Q!NFD&X:Q1@JE&J68<RG8^O^!$C]#Q$
M/\_PT(Q">\Y$KJ[!F&LPQD'3YNJ.OKJC_7)'SR/R=(V[7F,/$W,J7R,5'F#0
M?D#K&GNX>LR=]YB?G.7W^,)_X,U_@%/#-?(:]F<0;<B;(\P5/FB7.H$//;/7
MK>RX>YY'73327D^RXV:$;<@ZH^Q5>*;]/T_;.9:IDOI1568:]DC\7Y& U2>F
MXL.27/S59[K:ID46)%'YZ0/<; 65@'6F6SN0ZG+>@PQNRF>4PE/@#K=X <JM
M@.@FJW9W8C]"U[;*3 ?N=8.9?L&8?DZS[/90[?<-Q*6TV,*]P-D\<#';1-G<
MD I5,L:[P^AN#TV&)>IHHC#3 ;)\24L17K=2E1!>9[B]<PFR[6.<?E8D(VYX
MQ1SK#DF9E)WV>_^PF!0I_:')UXY3' !$^8"$4ZP!0FLK@"Q_PS)R^1GLA9>%
M,]BV#&EH*@)"X@PVK$_>%!ML*:ZV$.6'1XCP/[LJ(6WWSM<H]19PX )4G<D/
M)&%.?HG;HPTC_Q&\HR) AX;NW<,>:8[.Q[[F"A;V+S%(=)?P+BRJ8,NW>\-W
M;&>7_?\J1:74%82C9TK+QO4</S);MTT;"F:ET_A0BIN=9V8V$2:PV5Q&DWH1
M)K:CK55W2<7F<QD9*B4?=5EKUT[T''ZI:Z)%$&QCTVD4J%5?5_=N""\(2T!Y
M@AUA-?;1T./)D^C!LJ=K\+-YBG=DH\-7Q4J;S#9W&@U*9"$VW!DJ!T.?\S3E
MX!Q%7M.YX#*&3.ID8B;C,A;&4,8Z_AA/DU;.N2:Z;B"7433V/5$Q!#U-YQF;
MA$9WFUR^/+6<AGB2V[=$IF6>AG]LTQ@C.GOX9X%W?I?N]FE"KL1B?1.&Q:Z(
MB6NHK-Z/OT-@2W"'^3"^+;8SF80;?$HP"N@V>R*CXY?77L9:O$%QIZ($*:TE
M[#TQK$N^=ZE2]-!0.,<:*)W="*.C[+$ND-L*!4E6BL2;Z!]8_Y8F'2E.MDAB
M7=['I:O>0!=.I%997D#>]+Z!UP!I'(W2*M; %7$HO./%>A5\?TT1):P\1_"]
MR G?6J7E]F_>,ZKB<-!@:G73P7,U#GU7#B)^E"U)WL^>DL< HE^"N "+Y*3$
MG.([-)N[><C9PWH-PKR&51".M[PE>P08PENP3DE]E# .L@RN85C:!?4.693!
MH[=AB[G ;'BGKLIF)/,MOB=OGP2AQYLTA'<%(K@O7_8,..KSUW62YXH9(J\B
MPCDK.HD&!>$PCLCQ-U%EJ*G6M+KUK!__XP-*1E 301Q3PVE,R#U70@.*0Q]"
M<\5S?)BX2BSCQV6T*#OOAGA(F+WFV'?.\S#*D*ND9F=ZCA@3=\J8L>IR),8$
MD3EA4OJ.92,4.]"Z=3G,,Q(7E!G GJ/$!#49L*4][],YMA21FM]CX.\OT\&?
MDMT^LQAN"?86Y/C6QM> KIL 7P.ZUX#N-:![]>6?\ZZY91/51OTJO6TH_R"Z
M+Q!,-B]8.OWPX]<4RP4B,SEX,;3XU:5]=6E?7=I7E_9$S<^K!WQRCEY34M5_
M2]/)^H85W1+LX[M.JE 6Z$#W+K,;56;:*XK$V);(+N2/OVACB>4V(/[E?8'"
M;9"!5Y1N4+#C-.,1#+[LI@FR^OLH\BV^L/\"4?G$NYOOHC/3<FVMQR"$,7D>
M)2^FU1EJ.-FQ_1O\#$3F. <(F8E Z7!?-WYV[30.%:P^TY^+),)G_!7&,98A
M[$WPR4-O 4<NG[0T8FN@(YO6YAACT<Q 2AF3/KC]?N[2) &T5CRIHOT+UAUI
M$?DW_ \$25EY*C:^80TNX^]\R#+>.E<TE+A680F^DC0)XTZJ!-9%^T5JE\N8
M4'>>J)*&EC[G.6I$K/J8><-6N9R&7-KE26YEB"^&%WY%<4D><VCPI/2.N*&)
MBM9[O!*:^J?3:-$H:\521/MEFKKLQ!/HY66KAH _[MVX>%T9)7U"A#67L6"2
M0UCC"Q=(*=5&QB"#QG]O][+8[0)T(&#6>%JL*>*L5\*X^KRO/F^#>._82U4
MJPRATM1[;L:6;)X#YW!9E^W,/9XBBBA9YP!2JB;.UJ$XT($XT&$XVDYODF9'
M0(K F\\ 14-!D*UW=89>G:$S=X9J"'BG$7-U"$[/ W;Y=] F;TVMS'B*F:M#
MY!QD&'2 ./=$U"PRI#J?EVZB=\(-2"HIEDI5AK:#B9$4V[>]K2)$'M83C?7V
M<!KR&AS(1_1P9#XD PO;,U##+8B*N/;DB:#(>&"(7%+FUK>&HM<X2%Z"G;BQ
M8V>083MRL4O@>Y&1'^$;A_U!]JAJZ(U84&:7?<$#\^PI*76++RC-C-\]P2]9
MIS1!9EQKB/6-:EP)^WUGAS.@D@N1ACY8?*N /LI/67Q9VE=DWI;?A*]EQ7/L
MO0 ^HI=_Q=ICKN0Z[*<\N.\\H%X*0J1U;//F VNM1 -Y3!&5%J8ED>SG3#\Y
M"++M$N1Y#")\(07.9O9 >U<WINN"B(WHA^_DG]PJ$6J3[0G4CE'(/A;9:'LU
M(7;[.#T L 3H U:;ZB'Y)4T^L%0 )=/(5FD>Q,WO[](L?TGSWT#^!L)TDY#,
M5%[4?K3?\X];T?^KG ZE%LLK1&ST)[R-)IES [1\H^;L:$]][F+;X.@>8YBR
MG@,\$D&-84([C6FES%V6B=Q$6Y?Z/(%8E*VK![+WV>N7L'_:A3.$UJW36%2Z
M,DR;5XO5#,*T)X@3W3PKF//C BMGJ1@/,+!8G]?)^([J$5(OR-31?:9\$3E;
M7$:=&S>[PWH]S:08]VJK>L2FCCQ#BB#7!^=IYLJXQ#>BR\_S,NB.R7&F?W :
M:48G"532%U5,0'1--+HF&OF8:#3X>,M\WJ<DRU%! :2U'5?;(&$Z TU3E^[/
MNXM@MT/JUPR0:P;(&!?R5P W6Z*D?0 4; #]\A[;%<=.4Y89AGQ_AE,DCKHM
M(5S9FSS^X&DD;G!V@U5[4$%^#Q$(\P6284HVQ?P.'UH_ER*E U6:-[U,D6OT
M_AJ]=\YXU=9LIX[^:]#S&O2\.O;]"2(YS2X5%/^IGX^)()_ 7+B&7IR*D;H4
M=3&!.JD1-O50BB$D*MB)GO>6]22(ZD[$Z2;$LC0KCS")[B&)8\*<?#'"VW:.
M!X.[!UZ@2'6684]+(P['^VU6Z$9OKL4NDJ0MUK$OV&T0E]0-0([W>2*'$^W@
MNX3_V*=9$']!:;''"E<8%Q%,-F1,FN0P*4"TP.IXV6Y>X(J^T(];0Z[65J51
MEZ&KS1M\^T\U'PD_Q_SI T1/28Y%$L0W_B;+ !%+7X-_I(@6*Q+<$YT57 3S
MM$7I*>NN,B]P[1/S79'EF&>C-U"V*\VV<"_VTHMF6 /CMLBPOH"O3$,LDW\B
M(#XO^3S#VL?-?A]#$#TD &T.E/5ASL</[XB&.X5L/K/CC38=<$QWF"A#&,1?
M _0'( ED@J C=[!+2'U8KTG=]@] W%PME9/W:%9S$6O KE 0@1U&/:DQ1O\@
M/%',=\1S3%/3U]^6:5Q0_O;\?">@).9 EZCH'F0A@M1\K8X?$8:"K96#.A6)
M%G%#=C$$KK(4X\ZU%S@O?1K9*JV079\)R$0%IJ33K!,FYKSO,*&*PRF+^BG"
MFX9K&!SQ7Y,8ONK/^&/2Q 2"#']7[$!$?+#X"Q(_^ AB J^$D$?ZT6D@LVRY
M7H[$JP ,'IYY$93R?MHP,S>Z9VR;HB"L-LV2""/^FL-XN0E#A"WVZAD/$=$T
MFM<8.#:N%'8PI0O;_"(,24O$#'-_0<[Y9?<P)527(RDU79HKEC\Z)60VOK@P
M1GN_/ FTGC372XCLYJ_9RXJO=BAPMG621;YE8%W$SW#-+;EVSI+>Y:=JQNN.
MP6?UT)G+J65J.7F7#:0UH]*#PRR>(%U4Q,0[K/M1 $6-Y <$MIH8U(Z@>((Q
M$;U>%F6>$)L\P6=@L*W5,$L4N/(</<K1K*-D%H:57,:&-,][4,Y.DU"XT2J7
MT:) )&=F8YPR6OF!,T\Q-$"]'1J%<QI#2D)?$LR5W:0.6_(\ ]^ 7)*$-CU'
MD+YDXD127<;#^#))2VUT&547X\+"*+;G#U=,:\/\4+C+B!K_UEW*N> REL>Y
ML/)T!4\?2!E@8F-E/'CZ6LH5C'+3'CQ].S74IS]F<L08J/SK/%"IDD\Q!GK_
MYB1Z+>51C('@O\\-P:WLB3$P^M]SPV@_A6(4$]$/3YWQ'(I1<.FVO7U>0L5D
M'DLOB]TN0(?%^A6!&.XP5:'#Z[&-.@Q!5<,<SN8)M<%"N@R?#K:N&W^IU<M5
M7,;%9X37QZ'>/@Z=\$L3NX_YK@\_+_CP\P+/ 'Y-T1\PV=P%>Y@',0NP$7_-
MWG-&$&Z3-$XW!UJ01HL]J,VU?K],'-<K2O< Y0=2F">OW)G[9D;KB(G+_-^^
M/H)UBTK\2VB_ %_]DJ;1)XQ'YZC'WW&)E.ZPC@^C*L:&B3[)U@!A"&2OX)66
MF$/R_G!KS/_\IFM2\XQR$2Q6'];S;\PA075&6<R.!Q.[5IG3J+QFK=K(6E6S
M8%U&U$5Y]C6!\V+!.8'7P--$.[^SS=W.1/0J+.QF N.(SHMKSJ+8G3&]4/H#
M_F!'S, Z8P /.27P=]F>[6:X"HD0O=/6KR1Q6L*!N+Q\OTV%1BU(/V1-%T/9
MUXB]MQ%[#VK$7%,7KK'_B\7^YYXG<@\^0(P-R>CDZ7@C=U5\ 62SIAT[=CL.
M=H[.Q@Z*#5*%_/>E7B-D6EZ;<^GM$LG6SB+O&EZ\!L^F&O&Q&'P^PXBW%HGV
M*T FU1]=1I$]BK(>)YMA.,>V>_@-_]_O)Q_Q0X 2F&RR5X!HD\TQ6E*>[P^M
MBX+(W+N,@?:<N/5>A%[9]B![#KDDAQ$DA: ^P!*$!:(1HH?OI)X*9C/X)I%>
MKT5.R6&Q[E'-CCS-YGGFC*QM#36_D*A)LA&X4YHC;&]3Z%IKC_%GJ_8;\;%I
M6.J0ETZS!M ;QB^"(3;1:(/J;UC:9&_+;T(7E7B./48[8C_J+KL>XZ?LM;'B
M-=AFPLX;[=B=5)8KMP?V @)&/^8O.H;&LUF; SS[>.4$)]H:8SBP]$14^"!N
M7)Q*JN%/8!KQ0TQJ$[V-"?#5^9;GOZ,_N^P44K _U8 VI(<[C2LEAR)#ZV[B
MJ:-">@*OJ%>!#L"3Z32@*GN:F)!HKIYC9$QEME43E*?[.8T_)=9Q ;U0SK*]
M":FJ<2?'<.H) U0C5Y::VE*$1F$)3B-.SB>9/J1CM%51\W89!^I1(::?N76;
MVA0VC5B8%.J60N5R\,KD28_)IKV,;ST&$/T2Q 4X!4\?88(Y B01+JQ)%I2#
M?@4!&1W=Y,<)"_*DID ((P@S5FC]]<-Q8]6;GM9;GGK_C4WC 2]I@EHP]&S/
M;@*YT=^PETUO  Q1U,[<^M90U-CP$9K&RZ'WC)8*Y\"O.-GF:XKRAHLWRCM=
MQ=GVR?OV4!$;X6&/"/RS $EX$+V%49CI EC'?_X, <)R<GMX)AD^:I"))ML'
MKH'WK+]3\?,>K37F ZK]4$.S6<US5818]/Z"-]PI ,2O=/@3[ 5\J#36%V?R
M>>Z!I N*Q2@S OL ]GIEM/H/B //Z@O8?/%#'XJ3W2T!^H AUO/8I@8QQ#/V
M5\(;9_0G#$<Z[T'Y2+[IH'I*R'MS^J-/"6F1M*0'%I$V*6N MU0@PD'X4=#S
M%[4O I\2;&UG5/_X04CDHAGV]>@3 8D?6C-'7R^EVD_85V-86M?1.-#6U[HS
MIPF6FZ>6'7T/:EQ'--4:8%3,OZ1)J*PJB&9<0.21&$O+$Z0CVMB3[5-50R#]
MJ"W"?AP'^9S^:_T.3()G_)I+6#N(IR0'""L];T$.EI_!7G@&G,%.4=%/VE3T
MDVTP.GQ%1F#*TPQ?"\).@N2P^$Q U-*'7],8:R:BZZ ZU=NDPU'")ZW'=.:"
M#B['I15B\WJQA<Z#1#7'O<L84H[G&@]3,<E1%"1P&8V*Y3&T@@9,!*FYJ3U!
ME2B)ZT*XFE)RELRQWWJ?+_"A.XT)A3Q=5<]Z*QF%[[OV'!WR:$DKU5;# >XY
M8L;PN!V3^@PXF3U'[Z#(*I./L_S24T'.6 J^ A-T&H6JY<9$+O]..0R#E]T3
MU GU*SNXFY*^I9':)--/>QY^3["CJ,$;1H\G1#1,1G*"/5(+IQ=$F43J_*7<
M#D(;TV5,&K< A($LSS%Q<96?$V3S'(VCJ/8_3@TY8ZGVJA[K23PC&I?_\W1@
MEU%GC.$/"TY[CIJQ)( L .XYVD;A^#^-B1Q3#;'<X%1\U[[+N!M;-[T0>[H@
M.D954)4S+KQ\/(NAV\'2NXZ1=Y<FY$$UMJ/)DV 7Z\0^IZ256V.7/:6O^Y"1
M/\'>R\SNGD0O43F#[?4SP@P9YH]!2'B(Z"4B8Z CFQ8F!#.'VBPQG$3OAV>0
M8PT),ZYR=\*4-.$4>S3?WLX"JS-DGT2DBRH+2Z<9SJ_K_-Z7(L"\/@>@2^22
MP89W]5*0PUNL%]C>8!\O:WL*L[S-]9/+@9;QSV&X+CO"E55HL31I=6YAL&Z7
M4:"@^HD8>Z?4I("/>HX$S<L@Y<1.HT,IR,A74OCW8<P@X@4]J6K$(!-VGGM>
M-)"@(EO],.U.5MVR%+<-N^U4&ZGZ[@U\@*0 2[A)X!J&^-RK+QI.S>J35Y2N
M86[;\CON>Y\B<JX-X&0VH-)4!UI!"_9Y>ZB^5&L K;Z284U50$_L"@VJLTR_
M[8,(A/ES\)XB3.A5*[M'XE($=VF6,]5]Z1R+#\@P6P"G^M/R^B2B&:Z!(337
MQ7.F XK]1\B5Q"A+#";T5OX*\VW=#K(L04BTR S?6RS>5\%W#J!#5C+-ITHV
M<P_V^$[#DO:3""O F%W^B_[)?TBG/-?TGHOWL$)7BHY!QY(K<9F6?)(]P=<1
M4G1G1!@+/4*R6:;?(3>.=;'N]I6KN_0]);=5Z\:[=/<.$SI<]#3Y_%4M'EN,
ME]M\ 0E 04PH/]IAE9;(:5)3M)+<W--3FFP-N!>0EVR86! <&-IC+'94Y_(?
MSL9%,ZP_?J^._@4;-'M J"'9<.4D?X9E@8\E5;6K6TSAZYY?5C;:6W^LCG7&
M;OZN8?PX[9_B.R<T#:13BJ345G$:(4H..P4+IITP)%2O/<&'Z!V 283XD?D_
MH$FRML-$ 663"(N<8:L=V8X*I_(<34I6^@DARC:CYV@9*LP'49VGX9:APES!
MB/<4(X9XC[)WP',TZ?$>$VX(3V-Z VZ:KJO"4\P8OG$=WX>G2<%GD(O0HS(&
M.O[+:70(/3-CH.,OCJ.#X^'Q(SN@D_B-]9",/IG.'SYH]K>+V=Z=3?:4SZYS
MF3?<GJ^\O2-A\)XUU)YS&7[ "--;]AH<R$[NL9IR#\(XP%K&?7#XBL7,%K/(
MWT# 2T/66<&9\SD(6XGS1KNT?6&$F3_>%1#$F>W,L?8ZJE2Z-M6^LU*ZE8JX
M^!3D\XP'NW=8U,'P%N;9\_.=*++-&N@4@@4M=SBCG>&AI>%:=V)49)N=2=:!
M:7#S57H+7@.H*0\4%K .9%-F+=9O(,0*ZG"IQUO!WV"?1"UKF>!,#<AW!ZD&
M K0T*:?QHA3(DVA4(M)H:"].XT&;/OIZF0 -$XDA*"M'C? *4TMQ&0_J(4N!
M'2BY$A[$(]7J+(N5N5;=!CGM>.[\/T> =-5(EU%A_()PJ<AS%_X0@E!1Q3UU
MXIM2M+C*NQ\^VY.[=H$V05+%(H+X#00QW"2T]-8(?EN.&^$-D%HI85Y4A7BJ
M3#02M3X>#,]%.V !!QYD"38LK-FALX)9,#.4-T#$?YW PW_\?@PW+T.0!/@.
M,/PI_'&7W6KUR]^2; ]"N(;87&)YU<1C_=NR"P]]&C3+>E@B&&CQTI;X)+5#
MQ4[D_D"+3RD^ *TE19'W V_'G5'&O</U\EB?W-"DB!"SJ%JE8/N)Q5.\\VP-
MEV_L9'8%P>&R13<@%5=95!*$"421RV@1&[I2^7J$G"\F/(&>E;A^/OA^I*G+
MDDO.YB(L\>LI0I24HC8'[4MQE_T;HQ-#3T/PU,]Q'C;4]!0';/J6I4!Q0HP$
M *+=?SR0>1G)V7U(BAW-HR.KD^M]21ME!7,BKI^2B+A+BB FF:+T($BJ\!;N
M5^E#DO.*) Y9X:(FV-T6@O7#=Q 6),%WL5[#$""F/2 ;[3I?'7B0M106(LK@
M30J#."SB8!3W&$UI/.H<=XN7Y>+YZ?YF]7!_>_-\\W+WL/SYX6&U_/9R\^W^
M"7_*N&B-[3'/E'%F6?/0\,Y^.IY85NQ*_]N?(=X26V,N$_99K+[\IJHAWZ2F
M3P W6VSM_/#O__F?"CS_XB M\S3\8YO&>+_9PS\+3#<L\%Y1U>F##J<UOWT"
MLE$UFU3&4@*Y,<=34"50>4BLG5O6!X^TF"2EL/%_R,E^!#%-C\[O H0.6&_Q
MCG+Y'.<5D83^_$"T[1S#3.#=$U;Z O*FJNPZA&JWD90Z3Q,&]_$ PB'<1U#:
MW5/0F=PH338K@';WX#T_]3CP"4 I1Z)F$R2V#F%*79[K 80LB<'0?\*0)#;4
MX5L/X>1SVB]I&GU"XG4^F=RN0Z/&94[Q9V*$DP[->Y@'<8/9^@3S$#[+&N4E
MQ"S@%O6+OV<09* >?&!P6@]@E7+:F@6]@1!@S0]S(:P)=1F1!X"J,5S66^'C
M"7L(-9_]=M_+XU,]/HKNL>:?W(=4C3&]D2R@!$0/ 4HPH!FF[F)74)?K/5C#
M$.8^P2QA5&5')R!E4TU(7013;I\R;BV=Q&!5?AVK &B.&/(07CZ3:L/X1L!8
MK+]E)<MJE@QP'40U[K1"M+O?@6&0-V#\LZM 2N_I*P)[K!%7Q0+J0C]L)Z\'
MAZIV3YE<6 2MBZ#RKVC=K/I8"N*H3C1K6#@-G*)5=U(5RLZVZ6Z/P)8$,#_
MJ4@,!GRQIM5D&-"[3\A,+DS ;8QAJ! > "GE3D<*!@UCQR<(U?C1PVX?IP<
MJDP#0>C" Y %JL-)M##H]:_N@R8^S6;/[5;]/&;YO*E W>#%!/"V:ZK+IHY@
M_TT;[,ND.K>)MY/A7'UI>7.=,V#NL1YCL2$H3W[WVH#V!EK;-#/VS]PU:Z2]
MGJ6*WN!NSU+9-!< DN_=B6V*[R1CH+5-*^8-,.%0FVOQ^HKR!#CW6##%WAGU
M4@#8Q]$=9G7#W!@^=^^\&?8N-"=(S[[4[,%VG\/UP^_,O;/'VM-K."%UMH+#
M'FQM\Z? #'.[QZ_M85<A],W&M'RB-: 4 KY,F.3SK-\"=E17>!>84RQ* Y6
M+4<L*$RUV0-*(3[+!$QIJD79(0_!<@2)=*(UH*2A5B9$LEE.W:I>0%7Y4G5G
MNL;(Q1!))CD"3"\VJ@!+=XXU4%AQ3^;^&0-M.G#DP4R>0T<ZTRU.)H9'.,5B
M+TA^8)()AF""33U-+^C(4]VT5K''TP211C9#XT^PW_:R'4?DJ&JLL=:VKA ;
M9((AGV>7I/IQ0#XU]<8:KBVC'+1K;5%KJDUVI1*7XS$IA;G]M[:=U[27?&Q[
MJD5'''.GPB_DKZK>W$\N/+!MN@]9X=3F]Z+WBTX&C#5@DSR&<B8PS())X!%V
M8Z.2L!1CI!/;-N![=XD1424\6Y*+@PZ+]6.1XP^_P@3NBAW][C4XT$C(-_Q[
MB,!#5/<X)GK'T3K$C+>ITV<N\3*..7Y&AK3K'(YI7@W.-'4=VO//]WPN[]D1
M^R+6)$>KYG=S;OM^>@^%%*?BWW%LZSYZJ"885QP]#F)?U^)76%JN\/]_?7A9
M+1>/=XNOKV\//S^\+)]^>7AZP7\^.%5SZ>3UJUODPJ0@+:7W51FV[!:L4P0:
M#JJ'[SD*L'S!AX4.M!X=.2+BB$AI2^&Z-ZI05#>[Z?I3+Z;3!K@/WZCH] =/
M#,=RUS4MZ*[L#YQ'<JZ;Y+*@4^VT[2'8XLLPJ/>V/UA09 :,KLA]Y=S9MYR:
M-UDEK/1*6H?C_><Y@N]%3CP.J_0U\*VBC=+=%[9-]Q!6,<&3J,-B35*+:'8_
M0!\P!-DRC2,VS;L(ZH45HOJ[<KFZG7SCT>R/CKLLA->@C%8UB)X496TEI?E4
M1$7Q%C PTH?1689_:8. " P\/&WCMJL4Z5>ON&2,?U1L,3,%QOE%^QZ0_LWB
M^3P:(ZUMFZD!=C;<'F/SM8Q,C^N_EN'.L$\H76G#(Y/C.(N-C-3,/R8<BI,M
M)G$/,/&8D Y9R7YJ5]>R$[#L_FB[N5#G6&GL.W?FJA8S1 5&&A-4T0R++)YO
M?7$X/'>"S><N''N(<[4XPTTGZXEMF-;>%";8O?D"=9M_L?F3?(S*W"Q_?GQ>
M_.I6_POR-";(MJ\H)=UZH]O#MXQDH9_2<4(L\[G5F? T+%1\\Z!S8"XC@2HP
MAP!$U!2Z#9(_RD0Y[Z%_2CXP3Y-#7Z5PK=*J!3Q>)RK(%%"7E.FCPEG' WT5
MWJ[RT'XR3KMB-3]HC'P%"*;DQ09Y& 3N0?E?_'>I-&+M<8L9,'C#?.%AO08A
MTQ>A<_^\IS%UKO(!26?#QQ25"AX"4<EF.+T2/,*!(I=Y _OJIBW6[91<GP(Y
MKEXO)K/S)S3B+%Z9Q.V/LWT8VZ*Z=Q^?O2=]]%')MP0;<>DF@?]J?%,9YQG+
M]>QFQ,H<<Z,,?KG%EDN/Q?F*!555JJ%(WD,ZA23,+]:W1083T!)VKI=)M\^1
MRF\6Z^;H17+6OHX[N(?9/LV"^ M*BSV>09X\E$$0$)UB(#Z5/3]/05MN P1N
M\1E%Q/6&#?)V<H$'M5O-F8 "_N5Z[>GSB*#IC\3_CH$HW\2#ZJ_#2((*_R8]
M-+A)%5)X+)+(JSJXYBY'[2VH#3F1?O@W/V^+"GTT]1T9??S= [ON/,;Q)8 )
ML>47R3*(&^K.R0+[3T\5/T4$U+[M$"_!3CWYP8>LG3/9Q/%&W).&V0#? 5:3
M.I\QH4@.?<67(B(BSX0J%E&Z5K%P9948_^$G?U&D22Q8CF!>6B"LXF>8<W3:
M^_F,B,&T<BK=TJ ('SKVF$9$5=FJ=KLP*UR=,/27R6*(XXYJ/]P3,Y2_3A8Y
M?/+IE-L](4._@X/WN."75#JAY>]310OG_NCV._GAOZ>*(.$=XI11.G$?!BW]
M./F(9A]5C:A Q7%HNIJX#]2/'L2F3"-*@7ST(TL72]761$4_CUMU 9O-*(XI
M0$P@&@-<.PF!]:%V$JP%;)X$(S&)=R;]H:Z=CB",IG8ZK 7LG8X\<8I]5-)Y
M5EOL7#[HQ^C5<\%-V+S=HJ0HWC47S+'X@(.7V\2$@CO<<+ZUH12.%@P&%W;B
MN%C13NFA,28Y(22Y21=2F<F;::]XL@/9#TRL.; Q>Z_P.&D23$1Q!CMQ491O
MO622$Z^M^+D*3)"4IAJ61$KY!'TYHS+-"7I22@N0$IC**H8/1BF0WS\8E6GV
M^KIQP_',$^ .M_Z^C!%.9T+ 'V_=..0%PX66(6>2S8?*P^+93"B'KF;]+#FQ
M:N%1LN<X=)*M:+/B>37G. 2*6KQ8$4:EQ4:W5U5BO"KFJ<(Z#AUD+W*K>&;=
M>0Z!) K *D(G6&)T.CRCS<SPQ1PZ/MTXJ#K!ZBSK$$+THIV*Z-!:U"%DG$\(
M2F?N2%V$4WN0MD,'GPU6P?&^JW(5E=>GX^OI^8%6Z2K-@[@<+QM<]0YQH<["
M61XO5J2<@Z_\+D#H@*FB:F7ISYMQXQCB-(H?_,S7@Z#:&#$RNZA0('$NR/*Y
M%F,J3-KDA%)88UWF]+5AWK#\L&@^-H9B?^T0LU;I4-_D-+<PCD_^/&9&MN./
MFW0AOHGC])/TS7A,T7U:O.?K(NZOT>6Y ]YR7*QWI!3\?LM(_A1K@ @HD0D%
M?[R]L] C+?;A:*WA%"N]3#N]'UU@L\S6.S50]R?1+FU"AA% 0K_X=(GK+019
M=K,C?WG3>.Z9I ^ MMM-%2/"N5J8<=0P,$8FWDCC<\B!V^C.<;M']915VG<U
MI[D%$/\^JD/'7<->3UM->NUVN56=[B: FF<Z;"VWR%B'7!THW&ZJY^=<M,-)
M*8>-.3?K'*#?0( >X0?;-SHU;4!U[@LFS+>R,\?J$\0?X"LV";=>U1P=@V (
M6ICXF+(&J3KW*:DHAMRHU6?J4P7-,8BEBP;7NVA=GD:P7 =,],R,2EKBQ_72
MCA<GD\>T0#[54AR-2IIX^*\KE72HI'F'_FN^5-)FJJZ7G+P$F5 MGT<I^K5)
MK^ZO40#JV&*#H&NOX:9W:/+N+Q4K\BRX>:LZ2]I]JW$0=?>6<?[\^Q;A60??
M6\[9$Q?#JSK;L_,M%0^#)TP7=/J,SY!5_H@IAC%F[I#I>FZ?,1]BY>F>G3&?
MJH>OY_09BWB7^GSG3YEM"9UUT,PEG0J1=7)1JT<S=4_F^L5,E?O5>#NQ#+<@
M*LB39N4I#H7+^F^#!-F;]V"?9O (R:&;I^E!M$<)WNKQO;C@O@?1"G5@JY%/
MR3I%Y;(K$&Z3-$XW!])O-UWGGP'"-SLDW9*3#7TZ)TC3G0Q&ZAI+3PEF"H2_
MOR*P@\6N![P'#F=MX!^#L!KXAD?1GNZ4P3]\ASF3 CSPIVHQO+IE<_5.L NN
M!PV+M,"M!I/*FUBL4R > >B=L@>M:/3$6ET&@W/,'E3R5K_:]"T0UL, D6PO
M:?X;R-\P1\OQ7ZOTM2HA@1;K,L.?]2;E[X['"K3.OJRSP)_!:"?BE/]?"FS_
M^0EGO,TB6VRMD@D ;[3QBDT:59K,5F;B[.@\%:V_[;/6&P<VN;+%!4,Z=9P=
MJVM(W)TK+V&Q% %;"V+>3\Y@VPR2J].(N"1ODCU6R=-4V*R2,]KP53A#H^A?
MBN&+V:TCIRN')9.<\HR=G&*D&N?)WT7^<LB5Q2H)W?9>O>=8/.2H($[)^D&_
M?^_:].#\E@1EQ5%0UKG%P%:BD52^)4.SK" "D\J:%\"L=.'6JVN%VM]&ZGT;
MT&Q%%,=1;P53' %D $DIP*J_JA=,LGQ@4_\=-4NZDH&O""8AW >Q0XQ4A6Q;
M"7:-R_8UP.!6VNP)TB.43\D$7HR,BA]_WT9<#"V^/0>X%&)\2X"_&%[.2_F^
MZ@J#M;/ATD"JU0U>V@_$J"5$GK&B?V@0Y0V>M:9WJ! EUYVSI'^($"0FG;.D
MHY;%&_@ 20'>RFY/Y,=.=H:HJ'UI6]@T+4K?7K7%7V&^O2NR/-W5)<X;>Q77
MC^,NT9SFOB4Q)CJXV5EC^7-X;N%AX+6<P9I+V*LXJD*63#:E,M,IL!3#M$I3
M'66SC4K@91LR+!*.GY%&9.T:U YY;MC;O2N;FV$!UV^[UN0F*L#>Y(\ <Y,@
M7N98J&*2.[0&>U,<97Q,$0213A[/^&K&#9+RIA;(^"AZ3!%&0-(:<0_Q1,(=
M($:#+R4QQD?52TIX&^G?^Q[7?:?8K?^(>]R;(A'#$$>5 Q6L?4M"@#!W3O"W
MKR1M"))^?9Z41AB?J/"'96??C)72^N>98H6&YH\?)9LGO!?2\3GDY< ZXT/4
MQPVSZZK2 HX!J:FE:$"OM[+3:.&K)(/QP5W2:43(%8_!")$N[31B=-6,P6C2
M_"'#OHGAND/?23%X+:<)H:D:##[DQB). RN6^(/!%R[KJ.^#]H#=IC&6<5G9
M1I3<Q30I7>8W85CL"MH8L'S:BK]#8$L2Q#\ Z>[KD"^DO\'RJ,@V:<,W>A=1
M*=1S!-^+G"22KM+7@/M8)(2W8)T21WP8!UD&US LU:%Z0?9*[CND1T1:%U>D
M!?=-&L+*"8CO TPC)?P-<&!/ 8&B)<6K_>!^!QU#^&)E5Y^QJCUT#.0P;"P,
M6\QB<[.S.043#^>OZ^3UD-Y][:LA6]%1G>4A0 E6KXAJ14V(4U"\^PT&-2XB
M_,D]C NBO95JW&)-U9Z;SP!%+JDPOU*6#:*;#X""#7@I=N_D[0O=/(@H1-FB
MR+,\2 A0+.'!6:(W%YM=,/1)4S& &]H@=T<?W>$+L4N3<E:;]D]&:57-Y@:A
M(-G0>><4 [D,_QB(I0[/T%W%-7!YU*X#+&<-N_VASR1>)OP&%G943BS!ANRO
M\>+Y)"FJ[ZH,JR7<)%1=2/+JBT91I^H3\C@4NO3^#6LP)U'.ML0H<$3]8:5G
M/'ROA"/)/\'_(V^JO8GG<X&G/KI[B+"8?P[>4T1;%E,/QB/"L):OB=@FIG]P
M+HOWL#K9%!T+D)70MP']T5M ZP%+0',VOX"$A&,PK#?1#B8PRTF$ZJ/V*;,B
MX9X"? ^PSAY682@,;OE:+N#%M#V%LJX?4)W?"^;D=7%!5O#56R@KKW$%YBVF
M8BQ-6"6'/(7P*%#WA$R3#>5$Q />>7#]=TU(+Z-=,<'K*$KM,1:])@.D.L=/
MHK^2X<"<7%#W W#2.8;WJ"!D^YN43[)&0*J"E$DSBI-M%I?B"TTF1*(9UDOP
M,*4BQXSCS[!IM++%'L\298ZV>%,D,HUS1<2SE*WEZEOR?^_8]"X__O_^ ^_P
M?X+]'F*SEGQ4?9 D:4Y7H)^1CT!,S?-_@U%=@*I!VJ43G#R* BMLR9<I"E4N
M2^DG#P]$SF$+>!/ ),OQL1!70'E&?_JW)-AAM)M<L3Q(<E;P?Z*B3#LC6%OA
MS__T;UGQGN4P+\BG7U!:[.NAE<I"_[VG6UC1A>HE\%9AV<WT?_^4(])<)7C/
M*%_^WS^M@[CF56R,W6/A<@#1/0H^R=NRYS1(JO)=AZ^ ^(EJ1"@,+.&+<O1G
M\J_L?Z)TA]$P,H3T;P& =U^_W(3_+&!Y6FV8V-\Y"<;_%0E8?>*/#DNBTZP^
MT]4V+;(@B<I/'XC"V89.:XJ30#??-G++%Y; *@UM7L!=FH \0(>+7,!J\GL0
MDW(O__NGD.80B4#_&F0Y3;6IJX'5E<)N-@C0L421_5JL-[=!\D?[X(?-=9("
MB")9Y<^5)]FYP+ROG02&^J'Q;N]!^=^GI-UE@/70M89TV%R/"/X1O*,";Z_!
MFU28G/8T)RFCJ64LUEC1#9(-22.M3I7(*$0*F]X6&4RPI7J7[MYA4F8^M/%A
M8B4G4=3JSDXTD&K7] /R]Y$BY -=5,2>$LS#$I*!F2:$/?^"A1A1K1O2C(;T
MOR4P[YSYH*E.'C*VZ1YV^S@] % Z$E+4R&-H0ZTVUDDP24G0)<AS4CUM^:T#
M%^=+)P&Y!VN [9Y6=OLK9OD-(=2U(I0G. DP"9'30AL@(_'DRJ/R0JIQ@,7Z
M])AH19:O@=:<U.1.Y/Z6:=9"H*/\?[;X>Q06[^!I1/#K]D?8Z*7Q<JQU5ZIE
M]DL0%T>(Y>.<T4PB\"Y63&Z*38%-^2U$^>$1HJRO7]":.QTQK#?)25JO=>J&
M(;%,X^BVR,LJQL>BQM2]7KG4LY-J/FRV8<(@;IB .++,:ZRG5(O2_W5*PJ@\
M]JOTJ*/C^][62VC2"?B>W\989-4X,[EBEZ3R^BO[BD[7DJF*1K<""LP@!,\4
M4E[ 'ZXS_#U7B:3A\[N$LR^?]]@FFV93NJ/+CM31Q3#2[2#0$KKJXQV6MUAJ
M_%PD$69%7_$:L,I<.TG35Y1N4+!KRQ[-24[*'N&SK%.,^JX<A#^[VY)DO>PI
M>0P@HCK&(KG'F_J@W]Z##&Z2H)8V6,-^C-//GT&TJ0OBU,GR'3%N>QM.'@XF
MH!" *"- 2-RR2D/]X<H,I>;F.Q3I/.77PUA,!'>$TDK?Q&A:'M5SV#$?]G=.
MTF37TX4OTC&[XTN:1I]XY:[71'V&DR W[]8R()*NUT*DW6Z$=2D5)_IS14M0
MSK-=SEO#'POF9K^/(8@>$H V![H9+-,Z$E TQ,EK\43JB ;Q*T#4>L*HJ/RA
M9?B^RP24!CL):.W]Y'I(!0.<!(@F^)3.^B#^DG[@/\B 'ML6#7(2L/K%#3;>
M27F9)'H_/ /,6%&V6)<R]NC45AC9Y"\08V-3YMZ,S5Z$<7I2LCTD)8FI8Z+R
M5A"C^QDFU$+*CO\X1>RU)@U0H<8]U"7)*48'$F5IE<A8-QI^$:]N2SK4HI8A
M6UX1^(!ID<4'(F56*8G/'U]WUE^2KYK:)4$;D=&$<_5^N5P#CVFU(#O*KTJZ
M'PWFR<#CK.NK5+8:\#("_>(Q_N@6BUT"WXN,!'?:#)SQA=M,>[V&(3CUM+PC
M/L?H6P9Z/)L_T"S+-D*+DM1X!KM6'>\<IR://@$*L9[W-4!_ *+>==.(N .<
M)$WM5JU';Y;>-'^X3961+,AT;Y^X^G@G"8"1O5.U4/@7B)XB4I=O#8->VD\[
M/0Q_5^Q ]&N*_B#-D(,]S$F=P,H$'O$7_"&K.M.YXV#O?.HFB2@F'?08_8")
M[G'\X0U\3TDX Q?PA[HU8DK^1I(ZYO.7(D 8G>!TU((!_ARE@DM7P_OKD[]7
MNRE+.U2C/,T56I#G*Y5:'HU7EJU:J797N5?JJA\=G5 ZVA7P%9S:)42T9C,6
M7$])AHD/SZU:[W*48OEP?S!@4G>KT-,H%D-)A>&XN/2O^G,>/([+<)K)F#1S
MBG_,NK']>ZHD""+H]0 GM0L.H59,@YL&K3W-2>"_+>M:^4J1&^7A3@)[BVD\
M+[T$6982GT'W4$4CG 3I9Q#$^9;4_R*[C2MMO@.59)"3@*F&,EKA!IJLSM:'
M.=FZ(_^*NV$,L,.4#L-;B+7EY[NN9XWYI9-T\DR*OH#V0\K&B['FJS*EH4U!
M[,J[LA>L$+2>22T0YS65>)B3!R@OKE,].Y*.\T>'*E-Q'I(/B-*DJOZ(@CJ6
M#FB*<U:_ ">RM9/4-WR^DR2@^7C UE.!,6,?8G_/I7P\XWDT[A"@Z=/+0T;\
MS20! (O5(J;/8+BU/?0F.4G;7 U#F*#82;5@?1M2=+#2%Q?)+=@&\7JQKG(M
M>DFA['F:*I+[ #BL?86834<+8C61P@;E*S"")RS4NKJ8PE G*?_NZV^"JCVL
M[]P$XY18P$LX<'G["G4!ZWLN'>B1@K6\N>,2'^=+)X]/6 <"'U(CZYD&]EAV
MP7EK^(<6#>B=!I*R?I@?CJY%^$&D;T+E)ILI:4UQ$FB3(8CZ"= 8X8W3VM[H
MX"IUEAZQNJU?G:DYRTFJJDS&QFO\%0BW21JGFP/UBZYSS/3 ,PS):[UD(TB]
M&[B&*U0BMT59]5V>$O+BFM8#>4IH=1L*5T3B>6MP#+C*"\5H+N0D,6'E%1LQ
M19E!U?6=<KYT$I"C:3?LF9S$7C2SJ+,VG+28Y65>2H_("+XMJZ[B_&@@=X"3
M]"XH:52V$SJ&[N4#F\>8T<]L$R1ALT%R6'PF(&HQT]<TAF$O?JT\W,FC).5P
MZ6[O,.XWM*)[2!,[;\%K *.3/BP9YH])*^C^5"U]!%IA9(M\74CW-:F;UQRW
M'#J&]M_]!5>8NI2*^H67:BWM6&2(YK)\2] )-_4W5:E[016G08LY<P=51&*=
M__*<ABII,IQA3O+4_G%^2]9%O*9^_H:3:/$>PTWY@(!/"0I3/3IW;OVIWM,+
ME9'.,5_)P\!642ZUL0- O%1!KDX:2*<(7\WK#U_):QG\7[:5<^8BSEHUPMK3
M1QH7#W+F7A^E8=E]) NW8!?\__\/4$L#!!0    (   QHEK<O^V6(P@  (\T
M   /    :6-F:2UE>#,Q7S$N:'1M[5MM;QNY$?[L_ HV00XV(,F27RZ-Y O0
M!CG !=I>@P/:K]3NK,2:2^Z17+W<K^\SY*XDVXHL.ZG/N),_6%KND!S.///,
MD-J]FH92?W@EKJ8D<WR*JZ""I@^?_M,]'_0&5Z?I$@*GC<35V.9+X<-2TP^O
M*YGGRDR&?ZX6HU*ZB3)#60?[)U56U@5IPNC7KC(Y+8;]466]"LJ:H2,M@YK1
MZ'6<,%>S=KA6^&Q4*M.=DII,P[#?.[M49FOWJU-T7@V2:>G]#Z]+B;Z9-8%,
MB)^X)O?Z[AR7VT>L6KD"/;M>_4K#0;\*S>JZP5982KQ7R%+IY?!G59(7_Z"Y
M^&Q+:5K!L0W!EI -M A=J=4$\_!Z>!+NW\Z366W=\$T__HWF4Q6HZRN9T;!R
MU)T[6:7IYLD:8ZOST1W==JD3[]V0,^PF8PU%T\Y5'J;#0H764-#JTV*JQBJ(
MY'?N!_M6>UED</: %CN,DF%V<B_6*A_)!56H3#)2A"U$F)+XR2F3J4IJ\6E!
M6<W8$?\L($7ND99[,I9>N-E^JIVO$?\B6/&YUB0&Y[([N#B6)T*:7 PN\W2U
MU5QQF1RE)@PO>I?GYV_O*OF-L*>I>'(\?FN+77?$W^S4B'^#Q*SI &/D%9L@
M&NSC5%%Q'VTM(!U-E \.!N^(+")VB789A@_:MWO1>W?Q_NVH8?(NF^1AHW__
M^[#YH'=T+:9RQ@:<*9I3#JLI+WZII4-TZ27:.9$)A/Z/UI5BT._^BVU^_?%'
M<<T!:"(O2-W!9=83Q^R,[]XLSOJ#;/1YY934DH].1@=_[/+'6>_HK]+#"[!W
MN10WQLXUY1/J)+<TSL@MAC<VB":Y(T"6HC;!U80%R$ E1PV\)$6)*Z? TX7,
MT(1X*57DI"AW3\!01MY+MV214MY0#*[5F!YM.93!E)KYLXV^3+FL+B%FT!V:
MY A,&"V;"E_SOW7_.3EJ!N$%E,IK5%6PBYBK,,4"?4595)#'K:":S;',&;KE
M8KS<-,,!2CNA=+X#2B0*9> L]OO:.9U(M!:WW<9]90H$?LK^2/JZSC$F +#A
MB0[ HY@LL"+/T&-(:KW&5N-6?V=J*)O' K3#$K6&  !EX?4XG8_Z9-)/1:'M
MW+=H6].*D-R8](:6G0W0^%:9>]H><+,3-Q>]HY]O&3EQ]_N1;Z#1I%>.69N2
M\+%/1<VUD(ZBL^$\-4;1 Z<( L+&6ODI]V QWI\P;?%UKGRFK:_1CU5P5B>O
M5\YFE*/9BV,X.2>@)GGRTR*;2C,A\1?P!%=6/I56E\>T45KQ5;I4*4OI=GS!
M9+(!P@0*UF7OB8I;$Q68B-=Y%YJ0X,RZO0)IP+")K ,"&P2B*C[*4?M-V!$Q
M@3R,D@[GMDS6?O\NG&3&)%8SI;1E:X<!P"$SY2,S08I,'(?KR36G;?)BVC\#
M0DW>^KQ1C2;.Y)L*_ 9=O-4JER$J.D:%JZ13O "5LFMD:L,CU9XS7@PZ']-C
MY#'K"0H%\"9WJE"GJ:S6DND7RXI*K#,G>J0\O%D^X-N86!!N1'_*MS/B :([
M(#J^"]&]:>8>4O<GJ+T!"Y#/L'5"5XFME&0FQJ:J=ER?\59)NKP%"J"KY%AI
M%9:<7[=-RV$3,17ALCH'V%9"),)?- NJ:E<!KC[6 UEF71X5B)7>A S2O 9J
M<8<J#@<6016;D!G/%\"Y!VP^&IO9R1'-I*XCQ[#CJ"A0?6'7;%#<WZ^BU@E^
M#]),E]LKJXA%= 3A^52_C6T=OJS"/K0N5]+$Q6GQ\+Y C-NR-X978PKH,^+!
M#W!Z+)QR4%URU'V'\\:SJ9+BG>VP>@3#<8JU658[]NM&/MLV;&E]0%\^",1@
M/L-(S;E%.H;8UJ< 1,$^=\0;W;'5H+AMYAVUJ5>:G22]IM*OTC_S5H0TY9'0
MHTD:LEUB<WQ#NME#WY'O?+V5OHSC V@;T%Y^S28FGH>M(-]9\PG3VR;HUM3"
MJ'E$!7"O3%RK)U$K!NO\*NO&!HQ9EBH$HEWT/;9(["R0*V@81SD&-L&6 "9_
M<,7:1A3]4BOH'X.G-EG<<)\<-BM/V:SP60?79/%G$JC$F\A,$=S>),S5IF%.
M\H8S8*J)8@Z,U5P\F6O//1X%IJ:^3QOO+00D<W3TM.*?+P.O*0+1!^!!K=9)
M>=@C"?NZA#M@N;B:AONW'A$=<NQ3MQ.<2@N':._ I11)"J"(AZ0->CHI#2DS
MLWI&G(N,G#1GO:[A-2HK;9>$N_.I34PF;V$36/HVN;KW7#_TO21'B8U%OQ+\
ML$#<7&V!.#\%,!HCC,A%S7AH+(O%NUHN41<GD33+H-_O]=^V\EB=EI6GH4\;
M+FK-$W\_3_WBHP.L@&MGY_U?BN%A.T K!;&\%4L37K[GV19L(-:L?5H 3?&I
M@I!_J>/@B?TN^GMUQ#=W;V6KYR#>P9%SV*@[!M?=#./_+C=LA\"6U;?T$A')
M#U5LT@TWS+@P0&W8@ ]R*YD6G!O=DD.XY?_\Y,37!,%>R/Z[7(JSCCCKGUUN
M!O96CS[6B&E!?PP[BF>T7D,7;4OOW66%1?'QHFA7\_LS\*D_W7Q.H#7W,SOT
MP%-_@/@Z6.]@O4WK;:&= RF\!,<<8'VPWF]EO;T>4SS0Q4MRV0'P!^O]5M8[
MWO'H_,ENFL 7/CYZ?@,\W_G:=V\&W_=O_>1_ZP67>V_)%)H6W?1K![_' D_5
MI1GERE=:+H=\=\N+-/^M/?_VTTX;Q;ID\@?>L)FN.+HQGS):&=@E2-<<RMV^
M@2%3<R4GE&B\*XM ;BCU7"Y]Y.RK4WZ=Z,.KJ]/X(M+_ %!+ P04    "
M,:):;43A_B0(   2,0  #P   &EC9FDM97@S,5\R+FAT;>U;WW/;-A)^=OX*
M7#+)V#.2+,EVTTAN9BZ99,8/=]?+=#I]A<BEA#-(L "H'_WK[UN E&2;EF4G
M3=-6?K!%< $L=C]\NPO!ES.?Z[?/Q.6,9(J_XM(KK^GMAU^Z9X/>\/(T/D+@
MM):XG)AT)9Q?:?KA>2G35!73T??E<IQ+.U7%2%;>_$/EI;%>%G[\6U<5*2U'
M_7%IG/+*%"-+6GHUI_'S,&&JYLUPC?!PG*NB.R,UG?E1OS>\4$5K]\M3=%X/
MDFCIW _/<XF^B2D\%3[\Q3/9Y[?GN&@?L6SD,O3L.O4;C0;]TM>KZWI38BGA
M729SI5>CGU1.3OR;%N*3R671"$Z,]R:'K*>E[TJMIIB'U\.3</]FGL1H8T<O
M^N%GO)@I3UU7RH1&I:7NPLHR3K>(UI@8G8YOZ;9+G?#NFFS!;BI,0<&T"Y7Z
MV2A3OC$4M/JPG*F)\B+ZG?O!ON5>%AD,']!BAU$2S$[VF[7*>[)>92J1C!1A
M,N%G)'ZTJDA4*;7XJ J)C_CTGPQ29!]IN2=CZ1LWVX^5=17VO_!&?*HTB<&9
M[ [.C^6)D$4J!A=I?&HU5U@F[]+"C\Y[%V=G+V\K^86PIRE[\G[\TA:[ZHAW
MTMJ5>&>-3"O7$1^6E%3,2^)G( N@(Z?8)L&"[V>*LKOP:Q!J::J<M_! 1R0!
MPBNT2S]ZT.#=\][K\S<OQS6U=]E&#WOAN[^&$P:]HRLQDW,VX%S1@E)833GQ
M:R4MMIM>H9TCFP 7?#0V%X-^][]L\ZOW'\45[\@B$(74'3PF/7',SGCU8CGL
M#Y+QI[538DLZ/AD?_+'+'\/>T3OIX 78.U^)Z\(L-*53ZD2WU,Y(#88OC!=U
MM,<&68FJ\+8B+$!ZRGG7P$M2Y'BRO%\RF: )^R57@:2"W!V!@A)R3F)70B27
MUQ0VUWI,A[84RF!*S83:[+Y$V:3*(5:@.S1)L3%AM&0F7,6_-OT79*D>A!>0
M*Z>19L$N8J'\# MT)25!01ZWA&HFQ3+GZ):*R6K;# <H[832V0XHD<C61+IQ
M3B<0K<%KN_5>%1DV?DP'D 7H*L68 ,"6)SH CV*RP(H<0X\AJ?4&6[5;W:VI
MH6P:,M(.2U0: @"4@=?#="[HDT@W$YDV"]>@;4,K0G)CU!M:=K9 XQIE[FA[
MP,U.W)SWCGZZ8>3(W6_&KH9&'5YYSYH8A(]=S'*NA+04G WGJ0FR(#A%$! V
MT<K-N >+<<'"M,7/J7*)-JY"/U;!&AV]7EJ34(IF)X[AY)2 FNC)#\MD)HLI
MB7^")SC5<C'7NCBFK5R+G^*CBE%*-^,+)I,M$$90L"Y[3Y3=F"C#1+S.V]"$
M!$?6]@RD!L,VL@X(K!&(-/DH1>XW94>$ /(P2CH<VQ)9N?V[<)"9D%C/%,.6
MJ2P& (?,E0O,!"DJPCB<3VXX;9L78T$-"-5QZ]-6-AHYDU\J\!MT<4:K5/J@
MZ 09KI)6\0)4C*Z!J0L>J7(<\<*F<R$\!AXSCJ"0!V]RIQ)YFDHJ+9E^L:R@
MQ"9RHD>,P]OI SY-B 7A1O2GM)T1#Q#= =');8CN33-WD+H_0>T-6(!\CM()
M7:5#<LY,+!TPS/D9ETK2I@U0 %TE)THKO^+XVC8M;YN J0"7]<% 6PH1"7]9
M+ZBL; FXNI /)(FQ:5 @9'I3*A#F-5"+-U3R=F 19+$1F>'  9Q[P.:CL9F<
M'-%<ZBIP##N.L@S9%PKK LG]W2QJ$^#W(,WXV)Y9!2RB(PC/Q?QM8BI_OPK[
MT+I<2Q,GI]G#=8&8-&EOV%ZU*:#/F <_P.FQ<$I!==%1=QW.A6>=)84W[;!Z
M!,-QB#5)4EGVZU8\:QLV-\ZC+Y\,8C"78*3ZW"(>0[3UR0!1L,\M\5IWE!H4
MRF:NJ(MJK=E)U&LFW3K\,V\%2%,:"#V8I";;%8KC:])U#7U+OO/Y5KH?QP?0
MUJ"]^)PB)IR'K2'?V? )T]LVZ#;4PJAY1 9P)TW<J">1*WICW3KJA@:,F>?*
M>Z)=]#TQ".PLD"IH&$8Y!C;!E@ F_^&,M=E1]&NEH'_8/%61A(+[Y%"L/*58
MX;,.SLG"]R90B8O(1!'<7@?,==&P('G-$3#F1"$&AFPNG,PUYQZ/ E.=W\?"
MNX6 9(J.CM;\<S_PZB00?0 >Y&J=&(<=@K"K<K@#E@NKJ;F_]8CH$&.?6DYP
M*,TL=GL'+J5 4@!%."2MT=.)84@5<Z/GQ+&HD-/ZK-?6O$9YJ<V*\'8Q,Y')
MY UL DM?)E;WOM8W?]^2H\36HI\)OCT0BJL6B/.U@/$$VXALT(R'QK)8O*OE
M"GEQ%(FS#/K]7O]E(X_5:5DZ&KE8<%%CGO"%>NP7[A*P K:9G>N_N(='S0"-
M%,321BQ.>/&&9UNR@5BSYOH FL(U Y_>UW'PQ'[G_;TZXI.]L[+UQ8C7<.0"
M-NI.P'77H_"[RPWM$&A9?4,O 9%\RV*;;KAASHD!<L,:?)!;RS3@W.H6'<(M
MO_-5BL_9!'LA^U]R)88=,>P/+[8W=JM''VO$N*"_AQW%5[1>31=-2^_U18E%
M\?&B:%;SUS/PJ3N]>7&@U> ''OD;X/]@O8/UMJUWH(5OUC4'8!^L]T=9[]Y[
MA:]D7H[ONUGX9RAO]SM<V'%[]V0W2^(#%ZQ?WP!?KZ)_]6+P7?_&EXPW[MC?
MN:B?:5IVX_DJ7Z6'IZJ\&*?*E:CJ1_RVY2[__RK'I\W-M$&L2T7ZP"7_V3I$
MU>93A58%[.*EK8\!;K[ D+&YE%.*4:PK,T]V)/5"KEP(69>G_!\-;Y]=GH;_
MA?@_4$L#!!0    (   QHEJPG0K'S 0  %\@   /    :6-F:2UE>#,R7S$N
M:'1M[5K;;MLX$'W>?@4W08L$L&3)CG.1W "+( 52H-M+NMA]I:61Q2U%JB05
M6_WZ'5*2ZR9*FJ9!UBB<A]@B9SCDF</#BSS-3<%/GY%I#C3%3S(US' X/?_'
M&X_\<#IL'M%@V%I,9S*MB38UAY<[)4U3)N;1<;F,"ZKF3$2T,O)W5I12&2I,
M_,5C(H5E%,2EU,PP*2(%G!IV!?&."YBRJZZYSG@4%TQX.;!Y;J+ 'TV8Z'6?
M#M%YU4C"J=8O=PJ*OHD4!H1QG_@,:N=ZC$E_BV5GUPS'XY"9* S\X^=QAFUY
MFGT!?"Y-.U[/R!('Y^HR6C!>1Q]9 9K\"0OR0194=(8S:8PLT-; TGB4LSE&
MMB.T8:U_%SF17*IH-W!_\2)G!CQ=T@2B4H&W4+1LPBT:?&:2I]?[=E=W7-TG
M4,(F3D@!#NP%2TT>9<QTT&&OSI<YFS%#&B98/T2\7,/H=D3"T7=Z<0<H"48'
MM;&HG($R+&,)M=PA,B/O%!,)*RDGYTM(*LLD\C9#"U _B-J#>;3AD+VKE*Y0
M#8B16T0<(I>0./J<!(>60B8'<DG5C K0WMLEAYK\D1A;,PJ"$=D+C\E?_J5_
MYI-P/ GV>T%T@[?:)DQTX$_&X[L4ZV?FIY7$AP+[V#A>"((/HD5SP4SNL'Q?
M487IYS7Y '8E(ECY2JJ"A('WGF12.:O/C14!!"TE;ZA*<C(.!XCY:$+VK,6+
MW>4H").X::5Y2N-]FYB+LU?DPG),."&@?("/B7_=;\ZT44C]E>^ 4$TRQC'B
MJKO(ADKA6H0@4)&BC"0Y%7,@9[(HF-9.9X2S3*D!DH,"F6&\ 7DM<T'^QG5/
MB@$*$6AF\^]:.<L99#<EJ:/;UZX-7(.SFB1.V6JLIB;JY=CZHMAR;)UVWH%_
M='#R/&ZW!=_8W<[%PU^#BGOA_F\?';".<5G%D7Z)+$IN\[K*M8+/%5-0H).V
MN>B4(!SO4226(N%D+]U?B<)79JQ8T2I#>#(^<&2BA2-P;+.^S=J/9FW49(T)
M5(6B6=.[36.*I>U<:5)*F944[)"VV1O8:LHY03=0#-=_K"@QG5ACO3(F*&X,
ML!P;3-U6TTU,M*IXDWQ9@G(Q]<UIZ3_54KE)Z2!K@\9]/1Y'Z(Q#'Y'M.2.>
M296"<CVS3>.PK+G':2VKUJ2)$@:!'SSO['%TG)8:(@TEQ01 !X_;CS=^[G!B
M.Z"ZZ%=,XW:8,U-'70.=%9JEG5D3<')BHRTM0+9GW7D$B]RYQ:2W.88/]#L(
M[N6(W]2-D:U.6D>8R 5BY,T4T$^1^^_9@GX*](R^$Q''2'ML6Q<56W!E%YF$
M\I9\:+>RZ<BYYM8DQ);L;.XDN!>SW]":C)J]Q?K$[LWHKP3B3\+V8C<\#.)'
M1ZSI?1]HK41T)?[1I,2Q2,Y2TC%A(W!]5'(.]7!]*]D+]U8Y_J?DD*U>;+!>
M; 1HC\JWK1!L:&*V0K 5@J?DV[WND[82L4DIVTK$5B*>DF][=[S\VK];&O"+
MO:S9)-8\]FU6#\'67UC?>.N=<5AZ*5/-E;"]9:H*$:=,EYS6D:WM>3'^;Z7M
MK7T7UIEY(-+OO#'/5[K<PL<$9P)Q,52U5V#?5F"337%)Y]!(MT<S RJB?$%K
M[71Z.K0_#SA]-AVZ'Q;\!U!+ P04    "   ,:):0HW6$,P$   ^'0  #P
M &EC9FDM97@S,E\R+FAT;>U9WU/;.!!^OOX5.I@R,!,G=D*@V"DS5P9F>.CU
M![V;>U7L=:RK++F23.+^];>2[32 H93F>KE.>""VM*M=??MII;4FF<GYZ3,R
MR8 F^$LFAAD.I^=_>:-A?S@9U*\H,&@D)E.95$2;BL/+G8(F"1.S\$6QB'*J
M9DR$M#3R5Y874ADJ3/398R*!1>A'A=3,,"E"!9P:=@W1CC.8L.MVN%9X&.5,
M>!FP669"OS\<,]&I/AF@\G*0F%.M7^[D%'5C*0P(XW[Q'=3.;1OC[A&+5BY%
M34^SSQ &?F&:V7E&%C@5UY?2G/$J_,!RT.1WF)/W,J>B%9Q*8V2.L@86QJ.<
MS=".G8\U8O5;.['D4H6[OON+YADSX.F"QA 6"KRYHD5M;EZC,94\B6[Y]I [
MKN\C*&'#)*0 !^V<)28+4V9:H-"K\T7&ILR0.NY6#_$M'H5(,/R*%P^ $J-U
M4!N+RADHPU(64\L4(E/R5C$1LX)R<L$$Q4=\>I.B!*AO1.W)/-IPR-Z62I>X
M]HF16T0<(E<0._J<^$>60B8#<D75E K0WIL%AXK\%AO;,_3](=D/7I _^E?]
MLSX)1F/_H!-$-WF;R80)#_OCT>CY;=?7M#XYI$_.6>O&\5(0?!$-FG-F,H?E
MNY(J##^OR'NP^P[!S@NI<A+XWCN22N6D/M52!!"TA+RF*L[(*.@AYL,QV;<2
M>[N+H1_$43U*_99$!S8PEV<7Y-)R3+A$0'D/7^/^;;T9TT8A]9>Z/4(U21E'
MBTMWD0VEPIT'0: B(>>+.*-B!N1,YCG3VN49X203:H!DH$"F:*]'7E&E*O)*
M29J4NH>:.)+=N,B?F'XP,X%FEA!NV+.,07HW1[7\^^)KSUF85B1VJ:[";FK"
M3M(U-+&4:$FWRD/OL']\>/(\:DX%-^3N)^?1S\'-_>#@EP\.6$?!M.3(QUCF
M!;>!7@9?P:>2*<A12=M8M*DA&.U39)HBP7@_.5AFB2]46=*D217!R>C0L8OF
MCM&1C?HV:M\:M6$=-28P3>3U)M^>&1-L;=9*'5+*;(Y!A[2-7L]V4\X)JH&R
M2PP["@PG]EBM=+GT<,#$G33=PD2IDM?!EP4H9U/?79;]'[5W;E(XR,JD\5B/
MU0B=<N@BLBTSHJE4"2CGF1T:IV7%/4XK638BM97 ]_O^\U8>9\=IH2'44% ,
M +3PN -ZK>=J$^N :JU?,XWG8\Y,%;8#M%(HEK1BM<'QB;6VL !9S]IR!)M<
MV6*2^Q2#)^H=^H]2Q"=U9V;+0NL8 SE'C+RI OHQ=/\]V]!-@8[9MTG$,=)6
M;:M)Q39<VTTFIKPA'\HM95IRKJC5 ;$M_W)I]CV+X%',?DTK,JP/&ZL+NS.B
M/Q.(WPG;WFYPY$=K1ZSVO@NT)D6T+?WC<8%SD9PEI&7"1N"Z5G(.].#FV;(3
M\&WN^(_"0[898X,SQD: ME:^;5/!QH9FFPJVJ>!'\NW>3TQ[-"^B^SXR_1]*
MU\=]'GC@:__!PYD1'VPQNDF+9MW5>L?Z6KV/NW.IEW)8> E3]2<O6T67N8@2
MI@NLV$/;VW'O]W>I[5?)UJP3\T D7[D0S);;4@,?$YP)Q,50U93X-SMPR+JY
MH#.H=RZ/I@942/F<5MIM4Y.!O?T\?389N'O3?P!02P$"% ,4    "   ,:):
M(:D<;>J\ 0!5$2( $0              @ $     :6-F:2TR,#(U,#,S,2YH
M=&U02P$"% ,4    "   ,:):O&W! +IA 0"0M!0 $0              @ $9
MO0$ :6-F:2TR,#(U,#,S,2YX<V102P$"% ,4    "   ,:):W+_MEB,(  "/
M-   #P              @ $"'P, :6-F:2UE>#,Q7S$N:'1M4$L! A0#%
M  @  #&B6FU$X?XD"   $C$   \              ( !4B<# &EC9FDM97@S
M,5\R+FAT;5!+ 0(4 Q0    (   QHEJPG0K'S 0  %\@   /
M  "  :,O P!I8V9I+65X,S)?,2YH=&U02P$"% ,4    "   ,:):0HW6$,P$
M   ^'0  #P              @ &<- , :6-F:2UE>#,R7S(N:'1M4$L%!@
0   &  8 <@$  )4Y P    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>88
<FILENAME>icfi-20250331_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2024"
  xmlns:ecd="http://xbrl.sec.gov/ecd/2024"
  xmlns:icfi="http://www.icf.com/20250331"
  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:xhtml="http://www.w3.org/1999/xhtml"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="icfi-20250331.xsd" xlink:type="simple"/>
    <context id="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_82d21078-75e2-4645-abab-f2cc96112b68">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">icfi:AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_832766b3-22da-46ec-90fa-22ffcee71b17">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:TimeAndMaterialsContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_83b896a0-9a12-4146-82cd-1b0ee089bc6a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2025-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_8648b851-e7ef-4502-951a-ff9c4226a64d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="C_865abbb8-e708-4843-ad99-843c3e51718a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_86ed4c32-a07f-435c-a2de-68d84ca46f52">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">icfi:MillionShareRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_89503513-13c5-4f37-a7ec-8d25384954ec">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_8ba1e5ce-0ade-429a-81fc-2cd9a86f9ff5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_8dc3cce5-4ddf-447b-8665-f21c71a4ef29">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditDerivativesByContractTypeAxis">icfi:JuneTwentySevenTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_8f3abf3b-8a9b-4dd3-9b57-d61259178c47">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_9281c9ab-2f63-4c32-8257-44e78e05c43e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndLocalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_93505554-9748-4f89-98a3-9b6f74dbca8c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="C_95e13872-fc31-450f-9cd0-90ee77c03bf3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_9ace2ee2-4780-404f-8831-c4897a9e81d6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-04-25</endDate>
        </period>
    </context>
    <context id="C_9e6f0002-5125-45cf-a28f-bf5906a2373d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-12-31</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="C_9ee2d019-aa3d-4a4f-9a4a-4cc09920f90b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">icfi:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_a012e2e7-4fcc-4a9a-b1cb-41f5afedd048">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_a9e36dfd-af68-4475-98ec-59ec73e3a0f2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_acb4e0fa-acb4-4617-8aa5-06cf651f97f4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">icfi:CostBasedContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_afd050b4-1de2-48ba-978e-e515dea2b202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:InternationalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_afd9333b-a288-4f47-af97-3870f9bf83fc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">icfi:CashSettledRSUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_b1f58b6a-aabd-48ae-a826-4b7bf82c9268">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2025-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_b476051d-acdb-427d-8f5d-2aebbd684943">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_b51ff012-0999-41e8-aabc-a805309158c0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_b74866ce-58e9-4265-8578-7a14309d87ec">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_ba5d0763-b64a-43dc-9a60-fcaaa4cb3e0c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">icfi:SegmentDepreciationAndAmortizationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_bfb5c503-16b1-4160-b0ae-ce8464dccc17">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_c2328f97-1028-4ad0-a3f6-fb8de5b31735">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USFederalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_c284df75-1ba0-4f3b-a4f2-955dd514609a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_c2980db3-f07f-4041-82b0-ed1219de7116">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_c2b01a05-d0c9-47fe-9d80-fde68bdf35ad">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">icfi:MillionShareRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_c54427f6-4d40-4ed9-a059-5e5e46151c50">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_c6b1312a-edb1-4a3b-9f7f-b97f285aa893">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_c7ab718a-ae03-4c39-bd1e-e53f0f8c990e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">icfi:EmployeeStockAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_c881ed46-ad82-4505-b406-f06c9b93a2f7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_c98a0507-2ef5-4b6b-8ea9-9cfc334c9a9d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_ca3d0338-6140-447b-bd71-0ce3e3b69b4b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:CommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_cc0c285b-722e-4ae4-9191-0208c84dc361">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2025-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_d077db2c-1201-47ee-97d7-0b2c6edbe4d9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_d0ecbed3-ba12-4ba8-970b-d8efdb285e1e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">icfi:VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_d2517fae-ab23-4024-9b66-ae0c57301981">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
        </entity>
        <period>
            <instant>2025-04-25</instant>
        </period>
    </context>
    <context id="C_d57ad3e9-6538-4c19-9cd0-d5c27b5f72be">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:SecurityAndOtherCivilianAndCommercialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_d59e7f6c-6be0-4dc7-8e33-a47e421cfef9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_d5debb6a-e3cd-4c36-a151-a29229e8eeac">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">icfi:AmortizationOfIntangibleAssetsAcquiredInBusinessCombinationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_db216d59-a19f-49f7-a516-c41ffbd5721a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:IntangibleAssetsNetExcludingGoodwillMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_db7030f9-fff2-4759-9827-3e00df353c48">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_dcb9f15f-7dbf-4c24-ba62-4371bc6681ca">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndInternationalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_e27d3e7d-ee94-449b-bf1d-82c286cd3fe5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_e2fa8410-f9e6-4f90-84e5-0fe612923e5a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_e4643d4e-157a-47eb-9768-5f96b6d3c932">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_e465158c-a18e-4d0f-9021-610445a089aa">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="C_e556f098-db10-4065-8c0f-c09bcb16d0b8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_e5627bea-4bc9-4e67-8942-517566d89aaa">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:AccruedExpensesAndOtherCurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_e86b3d44-b8ec-4784-aebd-c72412fc6544">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_e96a556f-6c8b-4c69-990b-3cf7504d7de3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2026-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_eadcbac7-05a9-43c6-bb48-2856312f45de">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_eaf8d061-8b32-4c51-a3e3-903022a6b165">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">icfi:MillionShareRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_ec06fe12-c155-40f5-94db-0bce2d5ef1d4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">icfi:CompanyOwnedLifeInsurancePoliciesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_ec625ed0-9d87-438f-bcfb-573cfe9563f3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:InternationalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_ec67ad54-e2c6-459b-ac2a-1c80507eef70">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_edaaa534-a6bd-4967-a81a-123d9286b9ad">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditDerivativesByContractTypeAxis">icfi:FebruaryTwentyEightTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_ee2386b3-1d85-48a6-b287-bf7ab1a771b3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:HealthAndSocialProgramsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_eee9c0ed-4279-41c1-86a0-a7968bfdf78b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">icfi:CompanyOwnedLifeInsurancePoliciesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_efa12804-12fd-42a8-8d38-2679140208f2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndLocalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_f0215c95-f102-42e2-9f17-aff7eb1fc531">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="C_f43c9e8b-2753-4f81-a850-d05b66f6083c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">icfi:CostBasedContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_f5e4288d-0c00-4986-8cc6-7b8c6cdc84c1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USFederalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_f84c9782-f8ab-4f6a-b349-2b609fdec6dc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_f86e4dea-16a2-4319-b4dd-9bb5ce4a0825">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_f8ae11e8-edbd-4319-8986-377724fc88d0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_fc2ef133-12c4-4171-a846-46c299d306c3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_fcab69ee-709e-4d1e-b8fb-65f72a7ce8db">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_fe0b1ad2-b71a-4e78-9ac4-f77948118549">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_01114fe7-639c-42b3-8fb0-57f413ff7531">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_012c42a7-da01-4ce4-bcaf-1ce14733fd9a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_03f68630-29e5-4ea8-ae0e-5ea8d827f734">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_04c3445e-c079-4c5f-9e9a-5d1a87eddcde">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_067e4f33-8793-41c4-a5a4-3dc465f227c9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_069d1d43-0a2e-454f-a95b-6c8f6f730036">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USFederalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_08338f0b-5a24-4431-bf34-ef6998ad1b46">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USFederalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_0a7ca982-a79b-42fc-8208-71975a520f92">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndInternationalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_0aed76c9-e962-4c73-9842-27d5b9f60265">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:HealthAndSocialProgramsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_0b23d0b4-7b10-4543-9657-854b7ce89dd4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">icfi:CompanyOwnedLifeInsurancePoliciesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_0c85ec78-5db4-47b1-a9f7-65ad9cd5f819">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_0ce63ddf-f2f4-449a-b8a8-898af6c132f6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_0e036038-5185-45ec-bc46-7db5540888de">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:AccruedExpensesAndOtherCurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_0f664dab-464c-49d8-9f1a-a047dc72f783">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:CommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_0ff21424-dcea-468a-90db-f97547236a4a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_11354c7f-7371-4601-8c66-053545e8fdee">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_115f587b-83e0-4c3c-a011-a7e4b770764c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:HealthAndSocialProgramsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_1197b833-3595-4136-8376-51bbb5058b00">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditDerivativesByContractTypeAxis">icfi:JuneTwentySevenTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_1249add0-8323-452e-a930-09fedf84c6b2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_14e528e0-8808-4d1f-b13a-10ed2d500bec">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_154e9ced-a7bc-4168-87ae-5d6b9aae4177">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_15f9cc62-57d3-4011-868e-fa21d140029f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_177f9582-c387-46b3-b057-848b45730ee7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_1aafb042-ee6c-4f5e-ba1e-10950a029c05">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_1ab134c6-d4b3-46fa-ab4b-f87ab7775117">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:InternationalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_1c2ff08b-dd48-45ac-8d1c-5d0adee40de1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_1c5f0b7a-89d2-4fbf-b457-f53569fe6777">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_1cddb288-e964-451e-a81a-0f4156fafa21">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">icfi:VestingOfRestrictedStockUnitsAndPerformanceShareAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_1f0fbfd3-298d-441a-94a2-ee47916fe352">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndInternationalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_1f387a1f-cbe1-491e-9324-6f5097db4eb4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="C_23912cec-c646-4b5b-bb4c-0af9c401b5ef">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="icfi:ContractReceivablesAxis">icfi:MasterReceivablesPurchaseAgreementWithMufgBankMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_23ecbd7d-b4ab-4be4-b21b-0c94dc3a62c0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:AccruedExpensesAndOtherCurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_24d7c4dc-b654-4bda-ae79-a5943705570e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_2feac70a-551b-436a-ab31-e3597195f9b5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_303ab8ab-e9ca-4ffd-b3ef-e1a4befbc6c2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="C_3095a2ed-0bae-42bd-9607-fd26d0bf9a8a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">icfi:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_31c84116-404b-4fcd-a354-fed1fee2a202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndLocalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_345f4281-481c-4eee-9334-a2f509aad8d8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_34fefb41-e415-441d-8e0d-1e45cd55375d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">icfi:OmnibusPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_3517c095-337d-4942-b8d2-d306b64e8337">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">icfi:AccumulatedOtherComprehensiveIncomeLossCumulativeChangesInFairValueOnDerivativeDesignatedFromCashFlowHedgesEffectNetOfTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_359bce9d-0b82-4401-934b-1a14d1fb9b89">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_366bd7da-e2a6-4ff1-bb17-abca9a65eb2c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_3a796a9d-5766-4805-8b2a-2ff890188751">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_3b951961-6572-4dbd-a007-2443f0726987">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_3bf23c7a-75e6-47a5-abfe-04e4efc6ca0c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:IntangibleAssetsNetExcludingGoodwillMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_3cd9094a-0fe5-47f4-88e8-26bd8d9c814f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">icfi:OmnibusPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-04-03</startDate>
            <endDate>2018-04-04</endDate>
        </period>
    </context>
    <context id="C_3ecd6ed2-c36f-414d-93ea-f6382cbe02f8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:HealthAndSocialProgramsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_3f84f106-4922-459f-801e-6ed142bd4871">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_408a8d7a-adcc-4ee6-b3b7-b6fce8885276">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:DelayedDrawTermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_40da89d2-3f28-4ad2-a4ca-560892ef9004">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_41834a87-ffb8-4b29-9f7a-04009c22d2d8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_420fadfa-6fa7-4e06-a0bf-aed952d980b6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:CommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_420fce3b-d577-4598-a8cb-7b980ea4a3a9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">icfi:CostBasedContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_421bd624-4fbd-4ce7-bc99-10481d9ef79a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:InternationalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_42bd8d7d-8340-4d3f-b1e1-8d37817dce72">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:EnergyEnvironmentInfrastructureAndDisasterRecoveryMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_4340c5ae-462d-44cd-b66d-499120292957">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndLocalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_43d13fc6-f869-4369-a3d2-252c2f7fb342">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_4487f286-b161-471f-9f1f-930ddae96456">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:EnergyEnvironmentInfrastructureAndDisasterRecoveryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_46cd81a1-3db3-42f6-b3ab-758fd659bee5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:TimeAndMaterialsContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_4e228a4a-1d27-4d01-9790-529f658e7a58">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_4e4c9c95-c7ec-42bf-92fc-e01f8841e066">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:SecurityAndOtherCivilianAndCommercialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_524c1f59-fefa-4b0f-be9d-91e3cedad43d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:EnergyEnvironmentInfrastructureAndDisasterRecoveryMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_5581414c-697a-4843-b00e-872556ab5b09">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditDerivativesByContractTypeAxis">icfi:FebruaryTwentyEightTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_5647a77d-445a-47db-8541-6af6f2e97582">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">icfi:CompanyOwnedLifeInsurancePoliciesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_57bb215b-5356-401f-8995-dd1b215e7488">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">icfi:AccruedExpensesAndOtherCurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_598c0462-6afd-47c9-b4bb-5b35bc9efb51">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:USStateAndInternationalGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_5ab8b4c0-990d-48cc-8c7e-798cb22c2869">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_5b2f62c2-6ae0-4941-81f5-762b8a422db0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">icfi:EmployeeStockAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_5c6ef9ed-d6a9-425e-8d10-b25381323fbc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_5ce863bf-c10b-40aa-a28b-5d32c8cb7fd9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">icfi:CostBasedContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_5fd83144-3897-4f84-96ea-5e88b71cc15c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_600d0231-174b-43f7-ab40-55ba78417e39">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">icfi:CashSettledRSUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_606932a5-5f82-45d9-b5fe-618a80a169b5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:DelayedDrawTermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_643b12b8-599c-49b4-8711-809093c2c045">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_65a9caf8-af7b-40d9-b7fe-4e88d11370da">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_65b8a2bd-11e0-47d3-a8bf-6ada5559cac9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_66f8e428-8207-46f0-88a4-c65a674fe7ae">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_6a6cf1ae-dcd8-4436-891e-d08dab284cee">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="icfi:ContractReceivablesAxis">icfi:MasterReceivablesPurchaseAgreementWithMufgBankMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_6fac847c-8078-41ea-89da-f86c78130f0b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_6fe8c294-29ff-487d-9d7b-390239496c02">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:TimeAndMaterialsContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_714e3fa3-0bc6-4098-b461-0fc7b3639e7c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_75d62052-354b-49bd-ad1a-c6542718a3e2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:SecurityAndOtherCivilianAndCommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_765bbd2e-9be5-405b-bd3e-14025deeb60a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:SecurityAndOtherCivilianAndCommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_7782ddb3-fe57-4895-bf93-617a0c9a2238">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:TimeAndMaterialsContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_77ad4326-8766-4793-8bd1-a2a47caf60eb">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">icfi:AppliedEnergyGroupIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_7827564c-2547-4664-83a9-5dbd1c5a1e12">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">icfi:CommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_79dbce0a-82e1-44a9-bdea-504fd0b91ca4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</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="C_7a0c649b-3e1d-4d1d-a3a3-b66c1bc2cf25">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">icfi:SegmentDepreciationAndAmortizationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_7c50e895-8ea4-408e-a9f7-6d3eaab5c259">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">icfi:EnergyEnvironmentInfrastructureAndDisasterRecoveryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_7db129b0-0161-4e6b-98c7-256cbd332f4f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="C_7e5d1f96-5f21-4b79-bf44-f99192a42dda">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001362004</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <unit id="U_pure">
        <measure>pure</measure>
    </unit>
    <unit id="U_UnitedStatesOfAmericaDollarsShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="U_shares">
        <measure>shares</measure>
    </unit>
    <unit id="U_Segment">
        <measure>icfi:Segment</measure>
    </unit>
    <unit id="U_USD">
        <measure>iso4217:USD</measure>
    </unit>
    <dei:DocumentFiscalPeriodFocus
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_affa79a2-f280-4c2e-8c11-1255444db55f">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_cc6bf241-7efd-4210-90a1-4ca2bcae618a">0001362004</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_80a941c0-edc0-496f-9da9-ed60f2ad4c7c">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:AmendmentFlag
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_b1cc9223-3adb-4434-87ac-92740bcb0da9">false</dei:AmendmentFlag>
    <us-gaap:CommitmentsAndContingencies
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      id="F_9c559757-bc65-4589-ae50-c0a77fd69d77"
      unitRef="U_USD"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      id="F_ee43ac49-a3cd-4af1-8ed3-2f5bfb4944df"
      unitRef="U_USD"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      id="F_eb3ab4f9-87f2-4ded-b488-8d1d3c1a58a1"
      unitRef="U_USD"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      id="F_2dcda0c3-bb48-42ae-b1b4-c6a8ae022af9"
      unitRef="U_USD"
      xsi:nil="true"/>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="C_cc0c285b-722e-4ae4-9191-0208c84dc361"
      id="F_bc987d48-d1fc-496c-8990-f399097b4f71">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="C_b1f58b6a-aabd-48ae-a826-4b7bf82c9268"
      id="F_b9778b98-1a47-4031-839a-f9e0f2a9a2ce">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="C_cc0c285b-722e-4ae4-9191-0208c84dc361"
      id="F_b1212fc9-e855-4dc6-9369-8a051e07668d">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="C_e96a556f-6c8b-4c69-990b-3cf7504d7de3"
      id="F_955ea635-1723-4117-9828-3d958dd331cb">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:NumberOfOperatingSegments
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="INF"
      id="F_51a00615-6914-48fa-8ed4-d69f50bb4d78"
      unitRef="U_Segment">1</us-gaap:NumberOfOperatingSegments>
    <us-gaap:NumberOfReportableSegments
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="INF"
      id="F_c0061dbd-9be7-4634-b204-9d0261eda80d"
      unitRef="U_Segment">1</us-gaap:NumberOfReportableSegments>
    <us-gaap:SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_f92f70f9-2dcc-40b9-bd51-72c6f9b0dfea">http://fasb.org/srt/2024#ChiefExecutiveOfficerMember</us-gaap:SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration>
    <dei:DocumentType
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_531ff9ca-0072-4d35-9df2-3cb52bd2c234">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_dbb1e24a-b7a1-45db-91bb-e9cf85ef59cd">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_b5ab3303-bbcb-4aac-97d5-67ade34ce69c">2025-03-31</dei:DocumentPeriodEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_31b30dd7-872e-44e6-b452-174d5e3050d1">2025</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_af89ae01-9aec-41d1-bb1b-f15886e03957">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_ff702363-239f-4f18-9c86-20a26cbcc647">001-33045</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_d443397d-fe0f-4105-a743-48cc2e58d7bb">ICF International, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_1c2fe65a-bf89-4ac4-9888-a5f3e6be200a">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_bae820ac-1c9c-406b-bd18-470b17331922">22-3661438</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_5ac0844c-f828-4cb5-8bc4-1bf4cd25469d">1902 Reston Metro Plaza</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_b55e6df7-5ccc-46e2-9ca5-3908ce9b7382">Reston</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_d49dbb14-3a48-4e24-8ea4-2f985201c0f7">VA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_b56aa98f-9062-4569-b93a-4396f9aafdd6">20190</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_79541b18-7978-43df-b576-f1b31f878de7">703</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_bcc09b25-2912-4a29-a752-c3de6c962159">934-3000</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_b3912191-42a9-4fe7-a7cd-5d0ee1f63c13">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_68cf1456-bcc0-49d3-b45f-533b9f4d21e7">ICFI</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_14c44169-b322-446c-9170-d1fcfbf92e09">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_999146fd-4706-4d4f-8f0c-57ba6620afb0">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_165672f0-d975-49e7-bcc7-992ae89f9b2f">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_526d71a4-69b2-44ce-842e-1e3dc4d54230">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_570a5c75-6590-4643-8aff-e4706f90ff5f">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_af672a5e-ddc0-4e6e-b5db-53a064b3ee86">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_699fed04-3101-4bad-9f13-ec36771a227c">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="C_d2517fae-ab23-4024-9b66-ae0c57301981"
      decimals="INF"
      id="F_555f4613-177d-47c8-b2bd-a7471318f9d7"
      unitRef="U_shares">18411115</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_fcbdd999-a123-4fef-8ba0-13ef0a02d115"
      unitRef="U_USD">5718000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_0eff0d86-03b8-4997-83c5-8d4bd4fb580f"
      unitRef="U_USD">4960000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_b1b9c7e8-80f7-4cfc-a04b-5c74906824d9"
      unitRef="U_USD">18374000</us-gaap:RestrictedCashCurrent>
    <us-gaap:RestrictedCashCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_f6aac732-d52e-4ac1-8623-b24d91a115fd"
      unitRef="U_USD">13857000</us-gaap:RestrictedCashCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_d9d3ef89-e4c8-444f-960c-0b2461350495"
      unitRef="U_USD">236161000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_b962e026-a2ba-4210-86ed-a19c528f4a80"
      unitRef="U_USD">256923000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_e72fcefb-9fe2-4e16-a7bf-989eb1191b94"
      unitRef="U_USD">228314000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_5ef4e9bd-5450-45bc-94cf-a06806d7919a"
      unitRef="U_USD">188941000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_7019d666-ced4-4fe1-90ee-a994ba799571"
      unitRef="U_USD">21189000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_90aff5fe-cdf2-4115-b7d4-387ac8c3d869"
      unitRef="U_USD">21133000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:IncomeTaxesReceivable
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_4be73d95-f4b4-463f-823b-2d6c3d269c1b"
      unitRef="U_USD">1073000</us-gaap:IncomeTaxesReceivable>
    <us-gaap:IncomeTaxesReceivable
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_f8a7d689-a76a-427f-a84a-7d82412f5608"
      unitRef="U_USD">6260000</us-gaap:IncomeTaxesReceivable>
    <us-gaap:AssetsCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_d5767877-56ec-4aa6-b7d6-e2b19752c45f"
      unitRef="U_USD">510829000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_c99856d8-c130-444e-af53-a2d64e79c8fb"
      unitRef="U_USD">492074000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_0239f269-386e-40aa-b7b2-f8e43f709899"
      unitRef="U_USD">63569000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_eeae54c8-95a4-42b3-b09a-83c5f8eca937"
      unitRef="U_USD">66503000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Goodwill
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_aac0863c-3a93-46e8-a108-21836edd57a0"
      unitRef="U_USD">1251199000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_55f002e7-a823-4431-8a23-37005e4bebdf"
      unitRef="U_USD">1248855000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_f92ea565-58a6-4f1d-84d6-5621a6894ef5"
      unitRef="U_USD">102617000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_973d5fcc-ff07-4983-b0b3-4bc6f741f8b5"
      unitRef="U_USD">111701000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_454b31db-6d23-4787-ba34-fb023e271ca2"
      unitRef="U_USD">112954000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_a9e6fbf2-eded-41f4-be55-54dbb70c8855"
      unitRef="U_USD">115531000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_c2961c3c-c365-491b-9c38-e3f565c66c3e"
      unitRef="U_USD">4113000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_e3ae5edd-0529-499a-b88a-79386189c3f1"
      unitRef="U_USD">1603000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_c580c3d7-2bfb-4a7c-b942-ba057accfa12"
      unitRef="U_USD">29817000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_09b5c3ab-5ae3-4222-bfa4-da1ecbf029e4"
      unitRef="U_USD">30086000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_e7a71cdf-3f3a-4171-96bc-70b235aca08c"
      unitRef="U_USD">2075098000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_de51bf93-e284-404e-b4fc-99353da6f839"
      unitRef="U_USD">2066353000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_93e4323a-70b1-4631-9590-3d9b75f4aa2e"
      unitRef="U_USD">122089000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_995ab5fd-ac5c-47f9-9fbe-106258bbfa7c"
      unitRef="U_USD">159522000</us-gaap:AccountsPayableCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_33ef185f-6c8a-4467-ac9d-899456177865"
      unitRef="U_USD">27407000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_6d3f7426-093b-4943-807e-b1becf54d4e5"
      unitRef="U_USD">24580000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_6543d013-9138-4b5f-850f-bf873c38fd2f"
      unitRef="U_USD">19792000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_de245f7c-7698-462e-9ccc-59c048355685"
      unitRef="U_USD">20721000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_b72f03ed-67de-4f27-b344-db9b4fc6a083"
      unitRef="U_USD">2635000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_0537e1e7-ea21-4d86-8dc3-fd3f97096dc6"
      unitRef="U_USD">2612000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_012969bd-9673-46ff-92ff-ba46f704b73a"
      unitRef="U_USD">75533000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_1a335cef-3290-40f7-b841-5a44ad0826e5"
      unitRef="U_USD">105773000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <icfi:AccruedSubcontractorAndOtherDirectCosts
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_4e19de0b-b5aa-4f9d-9e80-af700cea8e36"
      unitRef="U_USD">51876000</icfi:AccruedSubcontractorAndOtherDirectCosts>
    <icfi:AccruedSubcontractorAndOtherDirectCosts
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_8caa0b4d-ebde-442a-870d-3f660ba13261"
      unitRef="U_USD">49271000</icfi:AccruedSubcontractorAndOtherDirectCosts>
    <us-gaap:AccruedLiabilitiesAndOtherLiabilities
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_64f91831-0b3d-4507-a335-9ca596ab50e4"
      unitRef="U_USD">82195000</us-gaap:AccruedLiabilitiesAndOtherLiabilities>
    <us-gaap:AccruedLiabilitiesAndOtherLiabilities
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_00a3cc63-6aca-485c-a435-474d61333bc3"
      unitRef="U_USD">86701000</us-gaap:AccruedLiabilitiesAndOtherLiabilities>
    <us-gaap:LiabilitiesCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_441e03b9-7094-411b-a35f-a0cfb730ea9a"
      unitRef="U_USD">381527000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_6174dcc7-0721-49c2-b1dd-16837939bd12"
      unitRef="U_USD">449180000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_e9ae2a55-8cb3-47fa-b848-117db7fb79fd"
      unitRef="U_USD">502044000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_0fb1d57d-db67-4bfe-ac46-7e91be8c597f"
      unitRef="U_USD">411743000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_918c7d8a-fb7e-4aed-af41-31e00353bab1"
      unitRef="U_USD">152128000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_4c510c72-ebe2-4194-bbc6-9243fbb4a4bd"
      unitRef="U_USD">155935000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_40a4b22f-35b0-4c03-9b6f-de9a91d17324"
      unitRef="U_USD">10593000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_246db5bc-4b8e-4fcc-b5f1-731c2a9280a6"
      unitRef="U_USD">11261000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_808df2ce-9ebb-4fd1-8f5e-7b4b55db995a"
      unitRef="U_USD">59938000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_e92d1fe7-4e4c-4688-844d-e91b6cb919f1"
      unitRef="U_USD">55775000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_d5e3a916-37ae-4fd7-9839-981b020076e0"
      unitRef="U_USD">1106230000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_b7d18004-4abd-4685-bdf8-0ca449fb4918"
      unitRef="U_USD">1083894000</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="INF"
      id="F_e39bd724-f053-41b0-907c-97c1fbc17500"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="INF"
      id="F_043d18d0-628d-4747-9d27-99237bbedeb7"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="INF"
      id="F_d2f84f31-4d30-4c2e-8fcf-268a15ef0519"
      unitRef="U_shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="INF"
      id="F_06604e80-4073-4df4-b996-870c14b3e149"
      unitRef="U_shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="INF"
      id="F_84270303-8d9a-40cd-9941-1bffba9b7ced"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="INF"
      id="F_41012742-f681-4dd3-b9bb-67f4aebff067"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="INF"
      id="F_e3a2f1f0-f0a4-4260-b5d8-7749ad75d12d"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="INF"
      id="F_57a3ae75-1bf0-4c59-be93-72c20cf5a6bb"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="INF"
      id="F_68de6ee0-e460-45bd-bde8-f4495392b033"
      unitRef="U_shares">70000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="INF"
      id="F_c602a1a6-97d9-4363-9b5f-71c15bdf59c2"
      unitRef="U_shares">70000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="INF"
      id="F_f521a372-862d-4034-bb06-b984a045be5d"
      unitRef="U_shares">24302825</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="INF"
      id="F_bfea70aa-d02a-4965-86d9-020a1cef535a"
      unitRef="U_shares">24186962</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="INF"
      id="F_bed568c2-6549-45a2-9f5f-ce476fefeae8"
      unitRef="U_shares">18426295</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="INF"
      id="F_942b90a5-6878-4618-addf-c011af31d592"
      unitRef="U_shares">18666290</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_e2940508-d28f-4798-a7d8-06859d40af2a"
      unitRef="U_USD">24000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_9ba54976-31f5-44f7-af88-74ede90199c1"
      unitRef="U_USD">24000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_2914b6d9-6ee3-42b7-a859-c93d9195a833"
      unitRef="U_USD">447649000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_2016490a-d844-4b85-9848-6da7ac955139"
      unitRef="U_USD">443463000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_d426c254-0190-4ad2-a1e5-0744c83caa9a"
      unitRef="U_USD">899051000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_e10e4119-d1e4-4531-9425-fb63d4791d79"
      unitRef="U_USD">874772000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="INF"
      id="F_6ea2a697-6ecf-416d-9484-53bcac682312"
      unitRef="U_shares">5876530</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="INF"
      id="F_e305c094-e074-4ac5-af0c-17a4627cb1d5"
      unitRef="U_shares">5520672</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockValue
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_63d854e2-bf3b-44e9-8b6c-4b335d90c57a"
      unitRef="U_USD">359397000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_da4c20b2-f5f0-42de-887c-1f5ddd41af38"
      unitRef="U_USD">320054000</us-gaap:TreasuryStockValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_c3fa1bc8-ebda-4ee7-9048-4ff391a1cefe"
      unitRef="U_USD">-18459000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_613882e9-101f-444a-ba15-977bb3048f35"
      unitRef="U_USD">-15746000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_bbec81d4-8480-434b-ac99-819fdb521090"
      unitRef="U_USD">968868000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_0ced7c58-f71d-46cb-ad3d-46804d2c0cd7"
      unitRef="U_USD">982459000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_5db0aeea-5199-402a-8c84-23cdadb80384"
      unitRef="U_USD">2075098000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_65c7dbc1-b2f6-4dce-a72a-55b6eb1acd21"
      unitRef="U_USD">2066353000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_03608fe9-cc2d-4c2d-be4b-c5f3edfa4cd1"
      unitRef="U_USD">487618000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_cae58827-3877-4799-92f1-862a4dd4104d"
      unitRef="U_USD">494436000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_5341a53c-c8b7-4ace-a6b9-b80a12450682"
      unitRef="U_USD">302542000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_bfbce675-4269-4ad9-a376-353d81c7f758"
      unitRef="U_USD">310533000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_70e5b5ae-9229-454d-ba8e-9c564982a994"
      unitRef="U_USD">131891000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_28daa283-aee2-4916-951a-21a28b17b819"
      unitRef="U_USD">129094000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:DepreciationAndAmortization
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_2e6b7d05-9701-4af7-b09c-f91681f71ebe"
      unitRef="U_USD">14795000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_28d38807-1916-4733-be45-7aa67648def3"
      unitRef="U_USD">13865000</us-gaap:DepreciationAndAmortization>
    <us-gaap:OperatingExpenses
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_7c818445-e8eb-4822-8be1-41b044177db1"
      unitRef="U_USD">146686000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_c1b4eb87-4fe6-4a6e-8045-b1d670772ce1"
      unitRef="U_USD">142959000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_2c66fa79-309e-4290-82e5-c56503a93a9a"
      unitRef="U_USD">38390000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_8c5fba8c-2ac8-45c5-8b68-9b8c4421e919"
      unitRef="U_USD">40944000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_c3c84169-8aa6-45f6-a712-4d29dc1951be"
      unitRef="U_USD">-7337000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_ddd62010-5212-44de-9731-cb15b9c610a0"
      unitRef="U_USD">-8238000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_0385d566-8939-486d-b9e4-19e08e6367e9"
      unitRef="U_USD">-1052000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_adaac1e8-944d-4c7e-9065-4be11067df43"
      unitRef="U_USD">1630000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_d3c13641-4d46-41ae-8332-6416ef262a01"
      unitRef="U_USD">30001000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_6bcf755d-3ec2-4b1a-b8dd-5ab745bb82ca"
      unitRef="U_USD">34336000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_fbd14fa3-7a04-41c3-9c97-bf7eb4ac196a"
      unitRef="U_USD">3150000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_95e247bd-72ff-4518-ac58-ba967be06f8b"
      unitRef="U_USD">7019000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_7bdb6c54-5561-4092-b7d9-270587997714"
      unitRef="U_USD">26851000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_e247c28d-2a2e-4375-b84a-012ab921969a"
      unitRef="U_USD">27317000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="2"
      id="F_e60ec8b6-0575-44c2-8a9e-e8cf48c691c9"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.45</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="2"
      id="F_f0c75500-f258-4839-bfa3-3d1223dda8c6"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.46</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="2"
      id="F_8e5b980c-3e19-43ce-800a-0601c0617eb4"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.44</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="2"
      id="F_d467671b-9d7e-41be-b586-7a0d9a7e6241"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.44</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_10f41a0a-8674-4181-aac6-6fcb4c604e61"
      unitRef="U_shares">18506000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_035db752-32e3-47aa-be27-75cebd422dcd"
      unitRef="U_shares">18757000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_a5725478-bf9a-474f-bedb-0f6f27fb42cc"
      unitRef="U_shares">18613000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_ac9b60c6-88aa-4e23-a9d9-f6d435b405ca"
      unitRef="U_shares">18946000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="2"
      id="F_a11b5e9a-385b-4339-b11e-ec94b2fd2089"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.14</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="2"
      id="F_67f0aa0d-7454-4bb2-87f4-388a2b3f6de2"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.14</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_05ab22df-9f6b-4faf-9f29-6381f437ec31"
      unitRef="U_USD">-2713000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_5f4ed4fe-eb46-4510-ab04-cecbcfe5d4ab"
      unitRef="U_USD">684000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_06522b14-4ffc-41c6-b850-f6c88deb4776"
      unitRef="U_USD">24138000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_2ae3bd7f-3110-415c-a3c8-8eeeac916fe0"
      unitRef="U_USD">28001000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:SharesIssued
      contextRef="C_8ba1e5ce-0ade-429a-81fc-2cd9a86f9ff5"
      decimals="-3"
      id="F_be8669f0-4111-442b-8657-812bc9fa2cc9"
      unitRef="U_shares">18666000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="C_8ba1e5ce-0ade-429a-81fc-2cd9a86f9ff5"
      decimals="-3"
      id="F_38cdf401-fcca-4c24-a0ac-f549792d66e5"
      unitRef="U_USD">24000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_66f8e428-8207-46f0-88a4-c65a674fe7ae"
      decimals="-3"
      id="F_2232aff0-ac2d-401e-a07a-e4de07c54ba0"
      unitRef="U_USD">443463000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_3f84f106-4922-459f-801e-6ed142bd4871"
      decimals="-3"
      id="F_f0ddad19-d851-4bfc-a197-ac9760ea017a"
      unitRef="U_USD">874772000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_fe0b1ad2-b71a-4e78-9ac4-f77948118549"
      decimals="-3"
      id="F_a216e4f0-c238-4da0-a0d6-961d9605347c"
      unitRef="U_shares">5520000</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="C_fe0b1ad2-b71a-4e78-9ac4-f77948118549"
      decimals="-3"
      id="F_edde6e0e-c4d9-4e71-87d3-cb342f8f0873"
      unitRef="U_USD">-320054000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_b476051d-acdb-427d-8f5d-2aebbd684943"
      decimals="-3"
      id="F_3490214a-4e17-4ce4-864b-5988b4a5b679"
      unitRef="U_USD">-15746000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_7750aa7b-1cf4-412e-bd7c-6dcc74dcedb9"
      unitRef="U_USD">982459000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_01114fe7-639c-42b3-8fb0-57f413ff7531"
      decimals="-3"
      id="F_e7fa2d22-7bce-448e-b702-4fd9b8dfd88a"
      unitRef="U_USD">26851000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_f469a2f5-7a6f-42d6-beca-db7b628f58a9"
      unitRef="U_USD">26851000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139"
      decimals="-3"
      id="F_0b871979-a948-4863-83c1-3b19356fa796"
      unitRef="U_USD">-2713000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_19e7929e-d883-4326-a892-a1e355cf33cb"
      unitRef="U_USD">-2713000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_0ff21424-dcea-468a-90db-f97547236a4a"
      decimals="-3"
      id="F_9082e644-be9f-4f53-a664-87957228d4b2"
      unitRef="U_USD">4186000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_14dbb50a-cd07-4a82-852a-ec77efc21371"
      unitRef="U_USD">4186000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
      contextRef="C_865abbb8-e708-4843-ad99-843c3e51718a"
      decimals="-3"
      id="F_02826901-72cb-4255-8e65-d0b9b89cd275"
      unitRef="U_shares">116000</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures>
    <icfi:PaymentsForShareRepurchasesShares
      contextRef="C_865abbb8-e708-4843-ad99-843c3e51718a"
      decimals="-3"
      id="F_b9de610c-3f44-4ef4-8db3-705ed42ad4f4"
      unitRef="U_shares">356000</icfi:PaymentsForShareRepurchasesShares>
    <icfi:PaymentsForShareRepurchasesShares
      contextRef="C_24d7c4dc-b654-4bda-ae79-a5943705570e"
      decimals="-3"
      id="F_20f155ea-fc58-4efc-afc9-6271f353ac51"
      unitRef="U_shares">-356000</icfi:PaymentsForShareRepurchasesShares>
    <icfi:PaymentsForShareRepurchasesValue
      contextRef="C_24d7c4dc-b654-4bda-ae79-a5943705570e"
      decimals="-3"
      id="F_ae64c800-2e8f-4837-9e00-6c839209d115"
      unitRef="U_USD">39343000</icfi:PaymentsForShareRepurchasesValue>
    <icfi:PaymentsForShareRepurchasesValue
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_6d8df767-5cf0-4d81-bc56-94c7d18db0d7"
      unitRef="U_USD">39343000</icfi:PaymentsForShareRepurchasesValue>
    <us-gaap:DividendsCommonStockCash
      contextRef="C_01114fe7-639c-42b3-8fb0-57f413ff7531"
      decimals="-3"
      id="F_39b97dc2-ca7e-4645-bcbc-a2f76f6cba5b"
      unitRef="U_USD">2572000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_3a012b4a-6986-4288-8482-07d2461b1064"
      unitRef="U_USD">2572000</us-gaap:DividendsCommonStockCash>
    <us-gaap:SharesIssued
      contextRef="C_177f9582-c387-46b3-b057-848b45730ee7"
      decimals="-3"
      id="F_907a47b8-7806-4ad0-bb63-299726200852"
      unitRef="U_shares">18426000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="C_177f9582-c387-46b3-b057-848b45730ee7"
      decimals="-3"
      id="F_4cb1433b-2a47-4d95-8855-e1d1267aa260"
      unitRef="U_USD">24000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_89503513-13c5-4f37-a7ec-8d25384954ec"
      decimals="-3"
      id="F_7bdb5b1d-3336-4644-86e1-88822cf546e4"
      unitRef="U_USD">447649000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_b51ff012-0999-41e8-aabc-a805309158c0"
      decimals="-3"
      id="F_22a681a0-c880-46e4-ae57-52dd0f27ebce"
      unitRef="U_USD">899051000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_2feac70a-551b-436a-ab31-e3597195f9b5"
      decimals="-3"
      id="F_9497cebd-69ba-4fbc-a8bd-99186398b3b8"
      unitRef="U_shares">5876000</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="C_2feac70a-551b-436a-ab31-e3597195f9b5"
      decimals="-3"
      id="F_4cf6e6de-7d60-4af9-af7a-be833cf541b3"
      unitRef="U_USD">-359397000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_03f68630-29e5-4ea8-ae0e-5ea8d827f734"
      decimals="-3"
      id="F_9e741591-4e18-43de-bbc3-1e2c60464b5a"
      unitRef="U_USD">-18459000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_81e956fd-e5c1-498c-a59c-70787f15d210"
      unitRef="U_USD">968868000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="C_0c85ec78-5db4-47b1-a9f7-65ad9cd5f819"
      decimals="-3"
      id="F_44f877ce-5a12-45c9-a76e-8d786d215e26"
      unitRef="U_shares">18846000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="C_0c85ec78-5db4-47b1-a9f7-65ad9cd5f819"
      decimals="-3"
      id="F_bc81f3e9-59f6-4883-99c5-8d73624799b1"
      unitRef="U_USD">24000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_1249add0-8323-452e-a930-09fedf84c6b2"
      decimals="-3"
      id="F_12e78f6d-93d3-4329-8216-66f74c36c17b"
      unitRef="U_USD">421502000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_0ce63ddf-f2f4-449a-b8a8-898af6c132f6"
      decimals="-3"
      id="F_556a81b8-5623-4fa7-9968-e2049b0e09ac"
      unitRef="U_USD">775099000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_43d13fc6-f869-4369-a3d2-252c2f7fb342"
      decimals="-3"
      id="F_8365519c-f65b-4abd-add4-06998453b9b5"
      unitRef="U_shares">5136000</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="C_43d13fc6-f869-4369-a3d2-252c2f7fb342"
      decimals="-3"
      id="F_23d1ed74-5b02-450b-ab21-524988fbcf2f"
      unitRef="U_USD">-267155000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_6fac847c-8078-41ea-89da-f86c78130f0b"
      decimals="-3"
      id="F_8b7c1db9-5065-49fd-ab5f-79582e8fde9a"
      unitRef="U_USD">-11885000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_65a9caf8-af7b-40d9-b7fe-4e88d11370da"
      decimals="-3"
      id="F_31e9a210-9152-4efd-ad84-d3ed918a9ed0"
      unitRef="U_USD">917585000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_40da89d2-3f28-4ad2-a4ca-560892ef9004"
      decimals="-3"
      id="F_eaf70c69-459b-406d-a95e-107f4e67d4da"
      unitRef="U_USD">27317000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_d259a63c-2d5f-439d-8d5f-afaa7e709d26"
      unitRef="U_USD">27317000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135"
      decimals="-3"
      id="F_c59fa754-1ca2-4300-873b-9d92d7c6a8c6"
      unitRef="U_USD">684000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_7413eab4-69ce-46db-b03f-86d7e6ce0bad"
      unitRef="U_USD">684000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_e4643d4e-157a-47eb-9768-5f96b6d3c932"
      decimals="-3"
      id="F_ea74d162-b5f5-423b-8c57-7ca74b46af34"
      unitRef="U_USD">3551000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_10aa68da-7814-470f-bb2a-d1ffdfba3293"
      unitRef="U_USD">3551000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="C_c98a0507-2ef5-4b6b-8ea9-9cfc334c9a9d"
      decimals="-3"
      id="F_15087fc0-3d82-4c55-b7d1-ef90b118abad"
      unitRef="U_shares">2000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="C_e4643d4e-157a-47eb-9768-5f96b6d3c932"
      decimals="-3"
      id="F_5057cf6b-3eda-4ffc-978f-633056a14db6"
      unitRef="U_USD">107000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_94882c3f-94d5-40d4-a43e-4cfe0e375ae6"
      unitRef="U_USD">107000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
      contextRef="C_c98a0507-2ef5-4b6b-8ea9-9cfc334c9a9d"
      decimals="-3"
      id="F_93fa6bd2-5897-448c-a1a5-d4d1850229fa"
      unitRef="U_shares">125000</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures>
    <icfi:PaymentsForShareRepurchasesShares
      contextRef="C_c98a0507-2ef5-4b6b-8ea9-9cfc334c9a9d"
      decimals="-3"
      id="F_7bf575c0-0a3e-4f9b-aa48-5f108da3de9b"
      unitRef="U_shares">218000</icfi:PaymentsForShareRepurchasesShares>
    <icfi:PaymentsForShareRepurchasesShares
      contextRef="C_a9e36dfd-af68-4475-98ec-59ec73e3a0f2"
      decimals="-3"
      id="F_778bd90e-4d51-47e1-888f-d518d94fa6d5"
      unitRef="U_shares">-218000</icfi:PaymentsForShareRepurchasesShares>
    <icfi:PaymentsForShareRepurchasesValue
      contextRef="C_a9e36dfd-af68-4475-98ec-59ec73e3a0f2"
      decimals="-3"
      id="F_8099b898-c50a-4cee-9fe4-73fd175b0960"
      unitRef="U_USD">30475000</icfi:PaymentsForShareRepurchasesValue>
    <icfi:PaymentsForShareRepurchasesValue
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_af7d74fe-a1fd-4ffe-b44f-128e3f333664"
      unitRef="U_USD">30475000</icfi:PaymentsForShareRepurchasesValue>
    <us-gaap:DividendsCommonStockCash
      contextRef="C_40da89d2-3f28-4ad2-a4ca-560892ef9004"
      decimals="-3"
      id="F_054e3463-69e6-4277-a072-7114fc264b78"
      unitRef="U_USD">2620000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_6ccd082f-b441-4a10-98d9-4368d045cd7e"
      unitRef="U_USD">2620000</us-gaap:DividendsCommonStockCash>
    <us-gaap:SharesIssued
      contextRef="C_d59e7f6c-6be0-4dc7-8e33-a47e421cfef9"
      decimals="-3"
      id="F_6d3312d7-de15-4e4d-9c72-653609193ba6"
      unitRef="U_shares">18755000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="C_d59e7f6c-6be0-4dc7-8e33-a47e421cfef9"
      decimals="-3"
      id="F_f28c0c18-2f44-4860-92d7-3fa1b5ca9737"
      unitRef="U_USD">24000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_79dbce0a-82e1-44a9-bdea-504fd0b91ca4"
      decimals="-3"
      id="F_f83021d4-d20d-4cdd-8b4e-658e98d68767"
      unitRef="U_USD">425160000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_c881ed46-ad82-4505-b406-f06c9b93a2f7"
      decimals="-3"
      id="F_71ebcf9a-9ef2-4f92-9254-11c986b07059"
      unitRef="U_USD">799796000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_8648b851-e7ef-4502-951a-ff9c4226a64d"
      decimals="-3"
      id="F_4ae9240a-bc2c-46b0-a7bc-47f86611fc64"
      unitRef="U_shares">5354000</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="C_8648b851-e7ef-4502-951a-ff9c4226a64d"
      decimals="-3"
      id="F_3f5bb838-d074-4f19-bac4-5584d9a41438"
      unitRef="U_USD">-297630000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_3b951961-6572-4dbd-a007-2443f0726987"
      decimals="-3"
      id="F_ffe360ea-eb3b-4e12-94ea-02f75365809c"
      unitRef="U_USD">-11201000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16"
      decimals="-3"
      id="F_dd0d2067-1903-4fb1-b306-c920f722992d"
      unitRef="U_USD">916149000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_49e9a160-9976-4be0-a1fd-5c483d88492b"
      unitRef="U_USD">26851000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_36cd547c-f9ea-47d0-bfbc-6f9f3724c1d6"
      unitRef="U_USD">27317000</us-gaap:ProfitLoss>
    <us-gaap:ProvisionForOtherCreditLosses
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_4986c7b5-0734-4846-ab75-bd00a6998ba0"
      unitRef="U_USD">-92000</us-gaap:ProvisionForOtherCreditLosses>
    <us-gaap:ProvisionForOtherCreditLosses
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_6e7e172a-befa-4661-b4f4-4b976eec9bf3"
      unitRef="U_USD">1347000</us-gaap:ProvisionForOtherCreditLosses>
    <icfi:IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_82f35f2b-9606-4b0b-8866-77524802108e"
      unitRef="U_USD">2594000</icfi:IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits>
    <icfi:IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_b6f3e1a2-cc99-4636-b18b-e4b2a19d31b1"
      unitRef="U_USD">4786000</icfi:IncreaseDecreaseInDeferredIncomeTaxesAndUnrecognizedIncomeTaxBenefits>
    <us-gaap:ShareBasedCompensation
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_3577ae86-57ce-4ae0-90da-a2b8efc1e567"
      unitRef="U_USD">4186000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_61d26fc0-9dc7-4132-b24d-a273ab9d7fe8"
      unitRef="U_USD">3551000</us-gaap:ShareBasedCompensation>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_fb8ec488-34b2-44e1-973f-0a0ebc44f21f"
      unitRef="U_USD">14795000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_c8e9463e-3966-48a7-be48-4b5b062f3152"
      unitRef="U_USD">13865000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:GainLossOnSaleOfBusiness
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_0fbd5699-12a5-4eb3-9ca2-4bbc8f7430f1"
      unitRef="U_USD">0</us-gaap:GainLossOnSaleOfBusiness>
    <us-gaap:GainLossOnSaleOfBusiness
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_5ec77d1e-c288-4865-a945-637ce3a3aa86"
      unitRef="U_USD">1715000</us-gaap:GainLossOnSaleOfBusiness>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_f9817a1f-c86b-45c7-9a96-c43cc41476c7"
      unitRef="U_USD">-1435000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_0d36232c-01f1-47b2-ab9a-e4f286f6deeb"
      unitRef="U_USD">-46000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_f3e54985-56e5-446e-8bc5-467b16731d0c"
      unitRef="U_USD">34610000</us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities>
    <us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_983b567b-d464-4720-9d46-98d23496555a"
      unitRef="U_USD">29024000</us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities>
    <us-gaap:IncreaseDecreaseInReceivables
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_0c67630c-b364-41eb-bd45-52a0f9bcf3d4"
      unitRef="U_USD">-21340000</us-gaap:IncreaseDecreaseInReceivables>
    <us-gaap:IncreaseDecreaseInReceivables
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_9ac6fb1f-852c-4d69-bac9-2f013782024e"
      unitRef="U_USD">-1604000</us-gaap:IncreaseDecreaseInReceivables>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_23085c8f-2b63-4bb2-b10e-ab86f57bf7ce"
      unitRef="U_USD">1314000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_2e2f9c51-3efb-4c89-9c9e-826cafb412d0"
      unitRef="U_USD">192000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <icfi:IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_d36c8050-3001-4daa-bffe-6ed1ea6adc04"
      unitRef="U_USD">1862000</icfi:IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities>
    <icfi:IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_1a09e635-b35a-43fc-9ec1-00b5e2829e98"
      unitRef="U_USD">-523000</icfi:IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_4fb30673-47b6-45da-ad71-0da3d4465324"
      unitRef="U_USD">-37674000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_acdcfd54-e3b6-4e3a-8352-4e313ea5a3bf"
      unitRef="U_USD">-15119000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_1354e271-26f5-44d1-aec7-58b4ce3ac1a8"
      unitRef="U_USD">-30465000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_0bd83159-f67e-4b3e-b884-13e290e45f9f"
      unitRef="U_USD">-17775000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <icfi:IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_a9e85eff-d17f-4d34-8ff9-b76be37b3ec1"
      unitRef="U_USD">2064000</icfi:IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts>
    <icfi:IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_40e3784e-52cb-47f5-b0ef-30df5405d186"
      unitRef="U_USD">3303000</icfi:IncreaseDecreaseInAccruedSubcontractorAndOtherDirectCosts>
    <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_4642278e-4648-4656-9dca-2bf300806c98"
      unitRef="U_USD">80000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_9e86144e-20cd-4741-b458-bf763b50a576"
      unitRef="U_USD">-3988000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_7ec35f72-b9dd-486a-a616-bb87e22188cf"
      unitRef="U_USD">5235000</us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_0e036834-e222-470d-8acb-3f4dcc7dab4d"
      unitRef="U_USD">11375000</us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_83f71da6-3020-457f-9ed1-75743f422bf9"
      unitRef="U_USD">-409000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_2391007d-d32f-4950-b2aa-0aa33e87fd9f"
      unitRef="U_USD">-333000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_b8e3dd86-5588-45bf-be5b-8253695a2e22"
      unitRef="U_USD">-33034000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_764eada0-501e-4dc5-a58c-9af8871f0a51"
      unitRef="U_USD">-10001000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquireProductiveAssets
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_953a0704-8023-47ec-9630-4b20560d9683"
      unitRef="U_USD">3452000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_fff371df-68d6-4901-a074-0062476d84db"
      unitRef="U_USD">5226000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:ProceedsFromDivestitureOfBusinesses
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_60ad3251-bd70-4510-a605-efb94ec1b989"
      unitRef="U_USD">0</us-gaap:ProceedsFromDivestitureOfBusinesses>
    <us-gaap:ProceedsFromDivestitureOfBusinesses
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_793bc8fa-079f-405d-a808-eabc872c80cc"
      unitRef="U_USD">1715000</us-gaap:ProceedsFromDivestitureOfBusinesses>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_823904a0-3ad1-4c87-85c8-fa0eb906ea03"
      unitRef="U_USD">-3452000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_116aa8fe-1ea9-4eac-b724-a9fcc46dd7fe"
      unitRef="U_USD">-3511000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromBankDebt
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_8d089b22-b2e2-46d4-b9d1-a28eff5376e8"
      unitRef="U_USD">512430000</us-gaap:ProceedsFromBankDebt>
    <us-gaap:ProceedsFromBankDebt
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_20aa3a0e-6e32-4417-aa17-1f23c11991c2"
      unitRef="U_USD">355877000</us-gaap:ProceedsFromBankDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_cc3a53f0-47a4-4832-bd3e-0d45a078fd61"
      unitRef="U_USD">422406000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_db125eb9-b6ef-4d16-b923-935387675ddc"
      unitRef="U_USD">311813000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:ProceedsFromOtherShortTermDebt
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_370e7aa9-a8a9-4d77-9677-2ebea3769d1c"
      unitRef="U_USD">2780000</us-gaap:ProceedsFromOtherShortTermDebt>
    <us-gaap:ProceedsFromOtherShortTermDebt
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_9b6c3ee7-1e47-422b-a53d-bc116eb18a64"
      unitRef="U_USD">24356000</us-gaap:ProceedsFromOtherShortTermDebt>
    <us-gaap:RepaymentsOfOtherShortTermDebt
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_dd354dd0-1772-48cf-be74-67727fcc3423"
      unitRef="U_USD">9172000</us-gaap:RepaymentsOfOtherShortTermDebt>
    <us-gaap:RepaymentsOfOtherShortTermDebt
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_0e0a21d0-56ba-489a-9bdc-e29e3deee231"
      unitRef="U_USD">23950000</us-gaap:RepaymentsOfOtherShortTermDebt>
    <icfi:ProceedsFromRestrictedContractFunds
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_b237b977-b43a-4884-aa74-de7893eef05c"
      unitRef="U_USD">0</icfi:ProceedsFromRestrictedContractFunds>
    <icfi:ProceedsFromRestrictedContractFunds
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_5843a4e5-01d5-4c77-b3ba-586e141c4f01"
      unitRef="U_USD">1261000</icfi:ProceedsFromRestrictedContractFunds>
    <icfi:RepaymentsOfRestrictedContractFunds
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_b8a74e41-e7b4-4a6b-b504-6ddb92356171"
      unitRef="U_USD">0</icfi:RepaymentsOfRestrictedContractFunds>
    <icfi:RepaymentsOfRestrictedContractFunds
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_f78e1a99-06e6-40bb-ae8e-327e3aa90ff8"
      unitRef="U_USD">3391000</icfi:RepaymentsOfRestrictedContractFunds>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_8618de1d-ccc6-4d19-9705-30ef8e41d5b6"
      unitRef="U_USD">2620000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_5813d821-46c0-4a6d-90ce-6cbd2e418018"
      unitRef="U_USD">2636000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsForRepurchaseOfEquity
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_0dbc41de-d4e6-4fe5-bc68-8d389843ddef"
      unitRef="U_USD">39342000</us-gaap:PaymentsForRepurchaseOfEquity>
    <us-gaap:PaymentsForRepurchaseOfEquity
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_c534bca3-31a6-415c-a4eb-e38052ddebb2"
      unitRef="U_USD">30355000</us-gaap:PaymentsForRepurchaseOfEquity>
    <us-gaap:ProceedsFromPaymentsForOtherFinancingActivities
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_be9a552d-c49c-4e07-a42d-8fea17759431"
      unitRef="U_USD">-646000</us-gaap:ProceedsFromPaymentsForOtherFinancingActivities>
    <us-gaap:ProceedsFromPaymentsForOtherFinancingActivities
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_93872f31-f594-417f-8089-6ad927d91017"
      unitRef="U_USD">-516000</us-gaap:ProceedsFromPaymentsForOtherFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_e513eca2-d108-4131-8470-bb06e8e50996"
      unitRef="U_USD">41024000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_4f2f4147-e01f-41ef-be96-2d5e44296a19"
      unitRef="U_USD">8833000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_a22f3e34-8755-4fb1-b392-ff6664daf64f"
      unitRef="U_USD">737000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_62e985be-ab33-4d93-b034-3735dc657432"
      unitRef="U_USD">-171000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_0bc51e09-cffe-4d6c-8f10-83c238b6ea00"
      unitRef="U_USD">5275000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_4fed5f60-a048-4ad2-82b6-e9b80a0275f9"
      unitRef="U_USD">-4850000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_1f4552cb-fdd2-4257-a4c5-ec2e00c4aa53"
      unitRef="U_USD">18817000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="C_65a9caf8-af7b-40d9-b7fe-4e88d11370da"
      decimals="-3"
      id="F_2b6a8795-f705-4f16-a0bb-878741ea559c"
      unitRef="U_USD">9449000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_3104c374-55a3-4f01-ab04-89b1484353b1"
      unitRef="U_USD">24092000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16"
      decimals="-3"
      id="F_5396dd2b-571e-45d9-835a-46c6bb78680d"
      unitRef="U_USD">4599000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:InterestPaidNet
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_1aaf63b1-6009-4a68-a98d-d1bc050fdefd"
      unitRef="U_USD">4544000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_93eb2422-e33a-4aa8-8124-b876ef3c34e4"
      unitRef="U_USD">7740000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaid
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_b949dfc0-e7f8-4454-9129-5a005bac7660"
      unitRef="U_USD">1095000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_916b0429-45c8-4093-89be-335cb43c45eb"
      unitRef="U_USD">1133000</us-gaap:IncomeTaxesPaid>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_1e82379f-567e-420f-bb08-c00ad8946190">&lt;p id="note_1_nature_operations_basis_presentat" style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 1 &#x2013; BASIS OF PRESENTATION&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Basis of Presentation&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The accompanying consolidated financial statements are of ICF International, Inc. (&#x201c;ICFI&#x201d;) and its principal subsidiary, ICF Consulting Group, Inc. (&#x201c;Consulting,&#x201d; and together with ICFI, the &#x201c;Company&#x201d;), and have been prepared in accordance with United States (&#x201c;U.S.&#x201d;) generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;). Consulting is a wholly owned subsidiary of ICFI. ICFI is a holding company with no operations or assets other than its investment in the common stock of Consulting. All other subsidiaries of the Company are wholly owned by Consulting. Intercompany transactions and balances have been eliminated. The terms &#x201c;federal&#x201d; or &#x201c;federal government&#x201d; refer to the U.S. federal government, and &#x201c;state and local&#x201d; or &#x201c;state and local government&#x201d; refer to U.S. state (including territories) and local governments, unless otherwise indicated.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Software assets, which were previously included within &#x201c;Property and equipment, net&#x201d; and &#x201c;Other assets&#x201d;, have been reclassified and consolidated under &#x201c;Other intangible assets, net.&#x201d; To conform to the current year&#x2019;s presentation, $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21.8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, as of December 31, 2024, have been reclassified from &#x201c;Property and equipment, net&#x201d; and &#x201c;Other assets&#x201d; to &#x201c;Other intangible assets, net,&#x201d; respectively.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Previously separate financial statement line items &#x201c;Depreciation and amortization&#x201d; and &#x201c;Amortization of intangible assets&#x201d; have been combined under &#x201c;Depreciation and amortization&#x201d;.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Use of Estimates&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and the reported amounts of revenue and expenses. Key estimates include those that are related to variable consideration on contracts with customers, costs to complete fixed-price contracts, bonus and other incentive compensation, reserves for tax benefits and valuation allowances on deferred tax assets, collectability of receivables, valuation and useful lives of acquired tangible and intangible assets, impairment of goodwill and long-lived assets, and contingencies. Actual results experienced by the Company may differ from management&#x2019;s estimates.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Interim Results&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The unaudited consolidated financial statements included in this Quarterly Report on Form 10-Q have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the &#x201c;SEC&#x201d;). These rules and regulations permit some of the information and footnote disclosures normally included in annual financial statements, prepared in accordance with U.S. GAAP, to be condensed or omitted. In management&#x2019;s opinion, the unaudited consolidated financial statements contain all adjustments that are of a normal recurring nature, necessary for a fair presentation of the results of operations and financial position of the Company for the interim periods presented. The Company reports operating results and financial data in &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;one&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; operating segment and reporting unit. Operating results for the three-month period ended &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 and 2024 are not necessarily indicative of the results that may be expected for the full year. These unaudited consolidated financial statements should be read in conjunction with the audited consolidated financial statements for the fiscal year ended December 31, 2024 and the notes thereto included in the Company&#x2019;s Annual Report on Form 10-K.&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Recent Accounting Pronouncements&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Recent Accounting Pronouncements Not Yet Adopted&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Income Taxes&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;In December 2023, the Financial Accounting Standards Board (the &#x201c;FASB&#x201d;) issued Accounting Standards Update (&#x201c;ASU&#x201d;) 2023-09, Income Taxes: Improvements to Income Tax Disclosures (&#x201c;ASU 2023-09&#x201d;), which requires greater disaggregation of income tax rates and amounts paid by entities. ASU 2023-09 specifically requires all entities to disclose, on an annual basis, disaggregated domestic and foreign pre-tax income or loss from continuing operations and the disaggregated income tax expense or benefit by federal, state, and foreign components, and a tabular rate reconciliation, using both percentages and reporting currency amounts, of eight specific categories as well as any individual reconciling items that are equal to or greater than 5% of a threshold computed by multiplying pretax income or loss from continuing operations by the applicable federal rate. Additionally, the amendments also require disclosure of income taxes paid disaggregated by federal, state, and foreign jurisdictions as well as any individual jurisdictions over 5% of the total income taxes paid. ASU 2023-09 will be effective for the Company for the fiscal year ending December 31, 2025, with early adoption permitted. The amendments may be adopted on a prospective or retrospective basis. The Company is expected to adopt the provisions of ASU 2023-09 for the fiscal year ending December 31, 2025 and, with the exception of additional footnote disclosures, does not expect the adoption to have any impact on the consolidated financial statements.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Income Statement&#x2014;Reporting Comprehensive Income&#x2014;Expense Disaggregation Disclosures&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:6.667%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;In November 2024, the FASB issued ASU 2024-03: Disaggregation of Income Statement Expenses (&#x201c;ASU 2024-03&#x201d;), which requires additional disaggregation of certain costs and expenses. ASU 2024-03 specifically requires all public entities to disclose within a tabular format the amounts of (a) purchases of inventory, (b) employee compensation, (c) depreciation, (d) intangible asset amortization, and (e) depreciation, depletion, and amortization recognized as part of oil- and gas-producing activities in each relevant expense caption as well as certain amounts that are already required to be disclosed under current U.S. GAAP. ASU 2024-03 also requires public entities to disclose a qualitative description of the composition of any amounts in relevant expense captions that are not separately disaggregated and the amount and definition of the entity&#x2019;s selling expenses. ASU 2024-03 will be effective for the Company for the 2027 fiscal year and interim periods within the 2028 fiscal year, with early adoption permitted. The amendments may be adopted on a prospective or retrospective basis. The Company is currently evaluating the impact of the adoption of ASU 2024-03 and, with the exception of additional footnote disclosures, does not expect the adoption to have a material impact on the consolidated financial statements.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_49a2e6b2-6c0b-40a2-b0c7-797e4d80f2fe">&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Basis of Presentation&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The accompanying consolidated financial statements are of ICF International, Inc. (&#x201c;ICFI&#x201d;) and its principal subsidiary, ICF Consulting Group, Inc. (&#x201c;Consulting,&#x201d; and together with ICFI, the &#x201c;Company&#x201d;), and have been prepared in accordance with United States (&#x201c;U.S.&#x201d;) generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;). Consulting is a wholly owned subsidiary of ICFI. ICFI is a holding company with no operations or assets other than its investment in the common stock of Consulting. All other subsidiaries of the Company are wholly owned by Consulting. Intercompany transactions and balances have been eliminated. The terms &#x201c;federal&#x201d; or &#x201c;federal government&#x201d; refer to the U.S. federal government, and &#x201c;state and local&#x201d; or &#x201c;state and local government&#x201d; refer to U.S. state (including territories) and local governments, unless otherwise indicated.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Software assets, which were previously included within &#x201c;Property and equipment, net&#x201d; and &#x201c;Other assets&#x201d;, have been reclassified and consolidated under &#x201c;Other intangible assets, net.&#x201d; To conform to the current year&#x2019;s presentation, $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21.8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, as of December 31, 2024, have been reclassified from &#x201c;Property and equipment, net&#x201d; and &#x201c;Other assets&#x201d; to &#x201c;Other intangible assets, net,&#x201d; respectively.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Previously separate financial statement line items &#x201c;Depreciation and amortization&#x201d; and &#x201c;Amortization of intangible assets&#x201d; have been combined under &#x201c;Depreciation and amortization&#x201d;.&lt;/span&gt;&lt;/p&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:CapitalizedComputerSoftwareNet
      contextRef="C_3bf23c7a-75e6-47a5-abfe-04e4efc6ca0c"
      decimals="-2"
      id="F_9e79fbb4-eeb5-4230-8974-1c7d3350d8d3"
      unitRef="U_USD">1600</us-gaap:CapitalizedComputerSoftwareNet>
    <us-gaap:CapitalizedComputerSoftwareNet
      contextRef="C_db216d59-a19f-49f7-a516-c41ffbd5721a"
      decimals="-2"
      id="F_033b2ce9-ef27-47c1-89b8-1513e1c7216b"
      unitRef="U_USD">21800</us-gaap:CapitalizedComputerSoftwareNet>
    <us-gaap:UseOfEstimates
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_bfa381f8-3a68-414a-bc50-7eafa4d4240a">&lt;p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Use of Estimates&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and the reported amounts of revenue and expenses. Key estimates include those that are related to variable consideration on contracts with customers, costs to complete fixed-price contracts, bonus and other incentive compensation, reserves for tax benefits and valuation allowances on deferred tax assets, collectability of receivables, valuation and useful lives of acquired tangible and intangible assets, impairment of goodwill and long-lived assets, and contingencies. Actual results experienced by the Company may differ from management&#x2019;s estimates.&lt;/span&gt;&lt;/p&gt;</us-gaap:UseOfEstimates>
    <us-gaap:NumberOfOperatingSegments
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="INF"
      id="F_2e016c17-0865-439e-9417-e9a8b420d126"
      unitRef="U_Segment">1</us-gaap:NumberOfOperatingSegments>
    <us-gaap:NumberOfOperatingSegments
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="INF"
      id="F_62590f8a-14c8-442b-9477-4a5da67e7eed"
      unitRef="U_Segment">1</us-gaap:NumberOfOperatingSegments>
    <us-gaap:NumberOfReportableSegments
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="INF"
      id="F_b648a4b6-4dd7-43d9-9073-005cdc8393ef"
      unitRef="U_Segment">1</us-gaap:NumberOfReportableSegments>
    <us-gaap:NumberOfReportableSegments
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="INF"
      id="F_9a585ec3-c641-4e36-8cb9-deb7fc482039"
      unitRef="U_Segment">1</us-gaap:NumberOfReportableSegments>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_2ea5c62c-0c46-4f7c-a5e3-c9fdf9991fb1">&lt;p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Recent Accounting Pronouncements&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Recent Accounting Pronouncements Not Yet Adopted&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Income Taxes&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;In December 2023, the Financial Accounting Standards Board (the &#x201c;FASB&#x201d;) issued Accounting Standards Update (&#x201c;ASU&#x201d;) 2023-09, Income Taxes: Improvements to Income Tax Disclosures (&#x201c;ASU 2023-09&#x201d;), which requires greater disaggregation of income tax rates and amounts paid by entities. ASU 2023-09 specifically requires all entities to disclose, on an annual basis, disaggregated domestic and foreign pre-tax income or loss from continuing operations and the disaggregated income tax expense or benefit by federal, state, and foreign components, and a tabular rate reconciliation, using both percentages and reporting currency amounts, of eight specific categories as well as any individual reconciling items that are equal to or greater than 5% of a threshold computed by multiplying pretax income or loss from continuing operations by the applicable federal rate. Additionally, the amendments also require disclosure of income taxes paid disaggregated by federal, state, and foreign jurisdictions as well as any individual jurisdictions over 5% of the total income taxes paid. ASU 2023-09 will be effective for the Company for the fiscal year ending December 31, 2025, with early adoption permitted. The amendments may be adopted on a prospective or retrospective basis. The Company is expected to adopt the provisions of ASU 2023-09 for the fiscal year ending December 31, 2025 and, with the exception of additional footnote disclosures, does not expect the adoption to have any impact on the consolidated financial statements.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Income Statement&#x2014;Reporting Comprehensive Income&#x2014;Expense Disaggregation Disclosures&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:6.667%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;In November 2024, the FASB issued ASU 2024-03: Disaggregation of Income Statement Expenses (&#x201c;ASU 2024-03&#x201d;), which requires additional disaggregation of certain costs and expenses. ASU 2024-03 specifically requires all public entities to disclose within a tabular format the amounts of (a) purchases of inventory, (b) employee compensation, (c) depreciation, (d) intangible asset amortization, and (e) depreciation, depletion, and amortization recognized as part of oil- and gas-producing activities in each relevant expense caption as well as certain amounts that are already required to be disclosed under current U.S. GAAP. ASU 2024-03 also requires public entities to disclose a qualitative description of the composition of any amounts in relevant expense captions that are not separately disaggregated and the amount and definition of the entity&#x2019;s selling expenses. ASU 2024-03 will be effective for the Company for the 2027 fiscal year and interim periods within the 2028 fiscal year, with early adoption permitted. The amendments may be adopted on a prospective or retrospective basis. The Company is currently evaluating the impact of the adoption of ASU 2024-03 and, with the exception of additional footnote disclosures, does not expect the adoption to have a material impact on the consolidated financial statements.&lt;/span&gt;&lt;/p&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsDisclosureTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_df550bec-6863-48f7-9d78-318c89cedc44">&lt;p id="note_2_restricted_cash" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 2 &#x2013; RESTRICTED CASH&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table provides a reconciliation of cash, cash equivalents, and restricted cash as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 and 2024 to cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows for the three months ended March 31, 2025 and 2024:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:48.55%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.701%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:21.023999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.701%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:21.023999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5,718&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,683&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Restricted cash&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,374&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;916&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total of cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;24,092&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,599&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Restricted cash represents is primarily related to the Company&#x2019;s energy incentive business with public utility clients and include restricted cash from the acquisition of Applied Energy Group, Inc. (&#x201c;AEG&#x201d;).&lt;/span&gt;&lt;/p&gt;</us-gaap:CashAndCashEquivalentsDisclosureTextBlock>
    <us-gaap:ScheduleOfRestrictedCashAndCashEquivalentsTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_7a8f2150-91a4-4f15-9c0e-e9b501a7ec13">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table provides a reconciliation of cash, cash equivalents, and restricted cash as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 and 2024 to cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows for the three months ended March 31, 2025 and 2024:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:48.55%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.701%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:21.023999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.701%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:21.023999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5,718&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,683&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Restricted cash&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,374&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;916&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total of cash, cash equivalents, and restricted cash shown in the consolidated statements of cash flows&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;24,092&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,599&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</us-gaap:ScheduleOfRestrictedCashAndCashEquivalentsTextBlock>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_fca6cf2d-4e17-401b-b0e0-b577fed8770c"
      unitRef="U_USD">5718000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16"
      decimals="-3"
      id="F_0fc26e71-94ef-400a-bf1f-b2f86d2e1ce8"
      unitRef="U_USD">3683000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_3962fb25-1206-48ab-b36f-f973f4a5dfed"
      unitRef="U_USD">18374000</us-gaap:RestrictedCashCurrent>
    <us-gaap:RestrictedCashCurrent
      contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16"
      decimals="-3"
      id="F_138eb22a-b817-4e46-a5e7-fd88d918489a"
      unitRef="U_USD">916000</us-gaap:RestrictedCashCurrent>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_ba55c4e2-3c9a-46c7-b50e-06d08dfc847c"
      unitRef="U_USD">24092000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16"
      decimals="-3"
      id="F_2654c2c9-ee40-4cd9-8f10-f601877c657a"
      unitRef="U_USD">4599000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_6ff537b8-0c2e-4b6d-9065-8efd05beac22">&lt;p id="note_3_contract_receivables_net" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 3 &#x2013; CONTRACT RECEIVABLES, NET&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Contract receivables, net consisted of the following:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:59.76%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.439999999999998%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.479999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Billed and billable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;242,652&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;263,624&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Allowance for expected credit losses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6,491&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6,701&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Contract receivables, net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;236,161&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;256,923&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company sells certain billed contract receivables in accordance with its Master Receivables Purchase Agreement with MUFG Bank, Ltd. (&#x201c;MUFG&#x201d;). &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following is a reconciliation of billed contract receivables sold to MUFG that were eligible and accounted for as sales under Accounting Standards Codification (&#x201c;ASC&#x201d;) 860, including billed contract receivables sold to MUFG and collected from customers on behalf of MUFG during the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024, and the balance of billed contract receivables not collected from customers as of March 31, 2025 and 2024, respectively:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:5%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:19.18%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:3%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:10.82%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;As of and for the Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Beginning balance, billed contract receivables sold and not yet collected &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;25,966&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21,302&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&#160;Billed contract receivables sold during the period &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;123,685&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;133,398&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&#160;Collections from customers during the period &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;118,472&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129,824&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Ending balance, billed contract receivables sold and not yet collected &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(3)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;31,179&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;24,876&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The beginning balances represent billed contract receivables that were previously sold and derecognized by the Company but had not been collected from customers as of January 1, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;2025 and 2024&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;For the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024, the Company recorded net inflows of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively, in its cash flows from operating activities from the sale of billed contract receivables.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(3)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The ending balances represent billed contract receivables that were sold and derecognized by the Company but had not been collected from customers as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 and 2024&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following is a reconciliation of cash collections from customers of billed contract receivables previously sold to MUFG that were eligible and accounted for as sales under ASC 860, including collections from customers on behalf of MUFG of previously sold billed contract receivables and remittances of cash collections to MUFG during the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024, and the balance of cash collected but not remitted to MUFG as of March 31, 2025 and 2024, respectively:&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:53.551%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.3%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:15.203000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.3%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:22.645%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;As of and for the Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Beginning balance, cash collected but not yet remitted to MUFG &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,339&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21,796&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&#160;Collections from customers during the period &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;118,472&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129,824&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&#160;Remittances to MUFG during the period &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;112,970&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;125,879&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Ending balance, cash collected but not yet remitted to MUFG &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(3)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;28,841&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;25,741&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The beginning balances represent cash collected from customers on behalf of MUFG for billed contract receivables that were previously sold and derecognized by the Company but had not been remitted to MUFG as of January 1, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;2025 and 2024&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;For the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024, the Company recorded net inflows of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively, in its cash flows from operating activities from the collection of billed contract receivables that were sold but not yet remitted to MUFG.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(3)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The ending balances are included as part of &#x201c;Accrued expenses and other current liabilities&#x201d; on the Company&#x2019;s consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The aggregate impact of the sale of billed contract receivables on the Company&#x2019;s operating cash flows was &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;7.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; for the three months ended March 31, 2025 and 2024, respectively.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;At March 31, 2025 and December 31, 2024, the amounts due to MUFG for cash collected and not yet remitted for billed contract receivables sold that did not qualify as sales under ASC 860 totaled &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;7.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively. These amounts are included as part of &#x201c;Accrued expenses and other current liabilities&#x201d; on the Company&#x2019;s consolidated balance sheets.&lt;/span&gt;&lt;/p&gt;</us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_4d381956-7471-4d6d-8d58-74e10f3956f3">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Contract receivables, net consisted of the following:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:59.76%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.439999999999998%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.479999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Billed and billable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;242,652&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;263,624&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Allowance for expected credit losses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6,491&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6,701&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Contract receivables, net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;236,161&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;256,923&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <us-gaap:BilledContractReceivables
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_63861d01-b30b-42c1-a796-41bbcca29365"
      unitRef="U_USD">242652000</us-gaap:BilledContractReceivables>
    <us-gaap:BilledContractReceivables
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_1314f404-3542-4c5c-a4cb-0a63b9b8b9ea"
      unitRef="U_USD">263624000</us-gaap:BilledContractReceivables>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_e0152376-00d5-4e0c-94ad-f7ad2839f7d6"
      unitRef="U_USD">6491000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_c60007df-ad34-415b-a2c0-6c07351af7d0"
      unitRef="U_USD">6701000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_e76be4bc-343f-4d78-984c-c96faff23341"
      unitRef="U_USD">236161000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_5e94724d-a2d3-4456-bb7c-db6f7e749dde"
      unitRef="U_USD">256923000</us-gaap:AccountsReceivableNetCurrent>
    <icfi:SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_bbcef676-5644-481d-8a4c-86c98cc7d69e">&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following is a reconciliation of billed contract receivables sold to MUFG that were eligible and accounted for as sales under Accounting Standards Codification (&#x201c;ASC&#x201d;) 860, including billed contract receivables sold to MUFG and collected from customers on behalf of MUFG during the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024, and the balance of billed contract receivables not collected from customers as of March 31, 2025 and 2024, respectively:&lt;/span&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:5%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:19.18%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:3%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:10.82%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;As of and for the Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Beginning balance, billed contract receivables sold and not yet collected &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;25,966&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21,302&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&#160;Billed contract receivables sold during the period &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;123,685&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;133,398&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&#160;Collections from customers during the period &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;118,472&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129,824&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Ending balance, billed contract receivables sold and not yet collected &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(3)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;31,179&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;24,876&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The beginning balances represent billed contract receivables that were previously sold and derecognized by the Company but had not been collected from customers as of January 1, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;2025 and 2024&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;For the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024, the Company recorded net inflows of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively, in its cash flows from operating activities from the sale of billed contract receivables.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(3)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The ending balances represent billed contract receivables that were sold and derecognized by the Company but had not been collected from customers as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 and 2024&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</icfi:SummaryOfReconciliationOfBilledContractReceivablesSoldToMufgIncludingReceivablesSoldToMufcAndCollectedFromCustomersOnBehalfOfMufgAndReceivablesNotYetCollectedFromCustomersTableTextBlock>
    <icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_a6a82561-18d3-45b0-bc26-bc32efff5e49"
      unitRef="U_USD">25966000</icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers>
    <icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers
      contextRef="C_65a9caf8-af7b-40d9-b7fe-4e88d11370da"
      decimals="-3"
      id="F_26880c7c-3d42-4d8b-8eaa-e4814a2d93f3"
      unitRef="U_USD">21302000</icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers>
    <us-gaap:AccountsReceivableSale
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_9c4f384d-7e45-404a-a6b0-35d78fc49e0f"
      unitRef="U_USD">123685000</us-gaap:AccountsReceivableSale>
    <us-gaap:AccountsReceivableSale
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_5b7f5901-7b25-4a93-ac91-a24bf2d126a5"
      unitRef="U_USD">133398000</us-gaap:AccountsReceivableSale>
    <us-gaap:ProceedsFromAccountsReceivableSecuritization
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_857e7fd3-d582-4160-8381-a1b82785d932"
      unitRef="U_USD">118472000</us-gaap:ProceedsFromAccountsReceivableSecuritization>
    <us-gaap:ProceedsFromAccountsReceivableSecuritization
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_2bff5b95-d60c-42a7-ad55-478c552d50a8"
      unitRef="U_USD">129824000</us-gaap:ProceedsFromAccountsReceivableSecuritization>
    <icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_1afbfb38-878c-4001-b438-9812cb12ce15"
      unitRef="U_USD">31179000</icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers>
    <icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers
      contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16"
      decimals="-3"
      id="F_86fbc746-81cf-4e5e-8582-8319bf618dfc"
      unitRef="U_USD">24876000</icfi:BilledContractReceivablesSoldButNotYetCollectedFromCustomers>
    <icfi:ProceedsFromSaleOfBilledContractReceivables
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-5"
      id="F_27f4a802-2cd1-4cab-bcae-3f830fd2a9f2"
      unitRef="U_USD">5200000</icfi:ProceedsFromSaleOfBilledContractReceivables>
    <icfi:ProceedsFromSaleOfBilledContractReceivables
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-5"
      id="F_c8749e5d-2414-4e8f-ada9-a9d7763b2e08"
      unitRef="U_USD">3600000</icfi:ProceedsFromSaleOfBilledContractReceivables>
    <icfi:SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_376a5247-e60f-4a6e-b15c-0f509d181527">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following is a reconciliation of cash collections from customers of billed contract receivables previously sold to MUFG that were eligible and accounted for as sales under ASC 860, including collections from customers on behalf of MUFG of previously sold billed contract receivables and remittances of cash collections to MUFG during the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024, and the balance of cash collected but not remitted to MUFG as of March 31, 2025 and 2024, respectively:&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:53.551%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.3%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:15.203000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.3%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:22.645%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;As of and for the Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Beginning balance, cash collected but not yet remitted to MUFG &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,339&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21,796&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&#160;Collections from customers during the period &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;118,472&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129,824&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&#160;Remittances to MUFG during the period &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;112,970&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;125,879&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Ending balance, cash collected but not yet remitted to MUFG &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(3)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;28,841&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;25,741&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The beginning balances represent cash collected from customers on behalf of MUFG for billed contract receivables that were previously sold and derecognized by the Company but had not been remitted to MUFG as of January 1, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;2025 and 2024&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;For the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024, the Company recorded net inflows of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively, in its cash flows from operating activities from the collection of billed contract receivables that were sold but not yet remitted to MUFG.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(3)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The ending balances are included as part of &#x201c;Accrued expenses and other current liabilities&#x201d; on the Company&#x2019;s consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</icfi:SummaryOfReconciliationOfCashCollectionsFromCustomersOfBilledContractReceivablesPreviouslySoldToMufgIncludingPreviousSoldReceivablesAndRemittanceOfCashCollectionsToMufgAndCashCollectedButNotYetRemitte>
    <icfi:SaleOfReceivablesLiabilities
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_b4e90267-913a-4e8c-b65b-ae46f879eb8e"
      unitRef="U_USD">23339000</icfi:SaleOfReceivablesLiabilities>
    <icfi:SaleOfReceivablesLiabilities
      contextRef="C_65a9caf8-af7b-40d9-b7fe-4e88d11370da"
      decimals="-3"
      id="F_508711e7-8990-4839-8515-eacdda51b6e1"
      unitRef="U_USD">21796000</icfi:SaleOfReceivablesLiabilities>
    <us-gaap:ProceedsFromAccountsReceivableSecuritization
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_bee7fb91-6676-4b53-b526-4712034f6fbc"
      unitRef="U_USD">118472000</us-gaap:ProceedsFromAccountsReceivableSecuritization>
    <us-gaap:ProceedsFromAccountsReceivableSecuritization
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_d5a2d9bb-706a-4a71-89db-8c1c1b3eb44d"
      unitRef="U_USD">129824000</us-gaap:ProceedsFromAccountsReceivableSecuritization>
    <us-gaap:RepaymentsOfAccountsReceivableSecuritization
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_dd449503-322b-4309-a0fc-2d68634dc42a"
      unitRef="U_USD">112970000</us-gaap:RepaymentsOfAccountsReceivableSecuritization>
    <us-gaap:RepaymentsOfAccountsReceivableSecuritization
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_b0daecf3-2a14-4411-a8e6-7a2bf0c078d5"
      unitRef="U_USD">125879000</us-gaap:RepaymentsOfAccountsReceivableSecuritization>
    <icfi:SaleOfReceivablesLiabilities
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_3d34d880-3164-4b1c-8b67-6e970453f968"
      unitRef="U_USD">28841000</icfi:SaleOfReceivablesLiabilities>
    <icfi:SaleOfReceivablesLiabilities
      contextRef="C_20f05bc2-1f8d-4f24-be86-0bbca74c1d16"
      decimals="-3"
      id="F_f94e8f32-953d-4d14-abfd-0c40abb243f5"
      unitRef="U_USD">25741000</icfi:SaleOfReceivablesLiabilities>
    <icfi:ProceedsFromSaleOfBilledReceivablesNotYetRemitted
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-5"
      id="F_9f76617d-e786-4042-8494-2d9e27263089"
      unitRef="U_USD">5500000</icfi:ProceedsFromSaleOfBilledReceivablesNotYetRemitted>
    <icfi:ProceedsFromSaleOfBilledReceivablesNotYetRemitted
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-5"
      id="F_b9cd5db5-cc3c-4405-805b-4bb1225ed41a"
      unitRef="U_USD">3900000</icfi:ProceedsFromSaleOfBilledReceivablesNotYetRemitted>
    <us-gaap:ProceedsFromSaleAndCollectionOfReceivables
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-5"
      id="F_c2428775-7bc6-451e-a65e-f5463884972d"
      unitRef="U_USD">10700000</us-gaap:ProceedsFromSaleAndCollectionOfReceivables>
    <us-gaap:ProceedsFromSaleAndCollectionOfReceivables
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-5"
      id="F_89abcbf3-174e-4cfb-a516-fafe93055774"
      unitRef="U_USD">7500000</us-gaap:ProceedsFromSaleAndCollectionOfReceivables>
    <icfi:CashCollectedNotYetRemittedToPurchaserOfBilledReceivables
      contextRef="C_23912cec-c646-4b5b-bb4c-0af9c401b5ef"
      decimals="-5"
      id="F_5540e2aa-044c-460e-a489-70b58066fcb8"
      unitRef="U_USD">1500000</icfi:CashCollectedNotYetRemittedToPurchaserOfBilledReceivables>
    <icfi:CashCollectedNotYetRemittedToPurchaserOfBilledReceivables
      contextRef="C_6a6cf1ae-dcd8-4436-891e-d08dab284cee"
      decimals="-5"
      id="F_6bfb20b7-f05a-447e-aaba-c2038114bd83"
      unitRef="U_USD">7900000</icfi:CashCollectedNotYetRemittedToPurchaserOfBilledReceivables>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_c52b10f2-a6fb-45db-8d0c-8a48cf684411">&lt;p id="note_4_leases" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 4 &#x2013; LEASES&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;At March 31, 2025&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, the Company had operating and finance leases for facilities and equipment with remaining terms ranging from &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; to &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;14 years&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;. &lt;/span&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Future minimum lease payments under non-cancellable operating and finance leases as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 were as follows:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:12pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:59.832%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.78%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.302999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.78%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.302999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Operating&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Finance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 31, 2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;25,144&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,041&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 31, 2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,158&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,041&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 30, 2028&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;17,511&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,041&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 30, 2029&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;14,934&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,967&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 31, 2030&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13,220&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,224&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;114,872&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total future minimum lease payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;208,839&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;14,314&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Less: Interest&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;36,919&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,086&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;171,920&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13,228&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Lease liabilities - current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;19,792&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,635&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Lease liabilities - non-current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;152,128&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10,593&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;171,920&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13,228&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LesseeOperatingLeaseRemainingLeaseTerm
      contextRef="C_643b12b8-599c-49b4-8711-809093c2c045"
      id="F_56bc04ea-0a5f-47db-bf5b-8fc6ca58fb90">P1Y</us-gaap:LesseeOperatingLeaseRemainingLeaseTerm>
    <us-gaap:LesseeFinanceLeaseRemainingLeaseTerm
      contextRef="C_643b12b8-599c-49b4-8711-809093c2c045"
      id="F_bd64687d-e219-4511-9b8f-a2a4c6bb4ba6">P1Y</us-gaap:LesseeFinanceLeaseRemainingLeaseTerm>
    <us-gaap:LesseeOperatingLeaseRemainingLeaseTerm
      contextRef="C_bfb5c503-16b1-4160-b0ae-ce8464dccc17"
      id="F_040fc724-11b2-49f5-a8d4-fdafa547383b">P14Y</us-gaap:LesseeOperatingLeaseRemainingLeaseTerm>
    <us-gaap:LesseeFinanceLeaseRemainingLeaseTerm
      contextRef="C_bfb5c503-16b1-4160-b0ae-ce8464dccc17"
      id="F_72a5aeae-3c16-4f8d-967a-62486f1c51f7">P14Y</us-gaap:LesseeFinanceLeaseRemainingLeaseTerm>
    <icfi:LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_e85758fd-98f7-42c3-8b1c-3bbed9d0a565">&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Future minimum lease payments under non-cancellable operating and finance leases as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 were as follows:&lt;/span&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:59.832%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.78%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.302999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.78%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.302999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Operating&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Finance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 31, 2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;25,144&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,041&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 31, 2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,158&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,041&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 30, 2028&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;17,511&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,041&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 30, 2029&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;14,934&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,967&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 31, 2030&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13,220&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,224&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;114,872&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total future minimum lease payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;208,839&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;14,314&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Less: Interest&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;36,919&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,086&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;171,920&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13,228&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Lease liabilities - current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;19,792&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,635&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Lease liabilities - non-current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;152,128&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10,593&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;171,920&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13,228&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</icfi:LesseeOperatingAndFinanceLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_ce795371-d959-4080-8e8e-59f1c69df4f3"
      unitRef="U_USD">25144000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_e9f6b206-8888-48dd-a852-47ac81b768d1"
      unitRef="U_USD">3041000</us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_e1449fbe-4c95-466a-9910-3e287dbc813b"
      unitRef="U_USD">23158000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_3567b370-3c3e-4ed6-bad4-ce37e82012bb"
      unitRef="U_USD">3041000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_f637b44f-5d79-46b0-b676-bc0675288cf6"
      unitRef="U_USD">17511000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_a07a1ec9-e9b1-44ff-8d74-bb1cea19178d"
      unitRef="U_USD">3041000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_9d189bdf-7ad8-4cd5-b6c4-9362455642a0"
      unitRef="U_USD">14934000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_d45b9482-eb85-45c8-b306-83a6e21b6af4"
      unitRef="U_USD">2967000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_b90480a8-00ae-49ef-83f5-898066942ba9"
      unitRef="U_USD">13220000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_81d3887a-8f55-4ddc-b809-c1d808e24727"
      unitRef="U_USD">2224000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_f263f13f-821f-4e3b-8c28-84755898ad2d"
      unitRef="U_USD">114872000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_81389405-2e5b-4e1f-959c-6a39cc791a74"
      unitRef="U_USD">0</us-gaap:FinanceLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_b70899e3-ee45-4151-86cd-54c08b9568c1"
      unitRef="U_USD">208839000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:FinanceLeaseLiabilityPaymentsDue
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_39410ec5-f7c8-4d5d-9bfb-67e99ba8a5fe"
      unitRef="U_USD">14314000</us-gaap:FinanceLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_2aff3a0e-ddae-4f5d-981c-816b6447b56c"
      unitRef="U_USD">36919000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_ad57b2c4-bad6-49fd-b06f-16f0551c43ab"
      unitRef="U_USD">1086000</us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_3f440e42-b503-4606-8463-4c2962e45a81"
      unitRef="U_USD">171920000</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_28f1702e-ce0d-4c59-96ae-42bcc3822916"
      unitRef="U_USD">13228000</us-gaap:FinanceLeaseLiability>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_9831f35e-d69c-4aa2-975c-1b01c5b02daa"
      unitRef="U_USD">19792000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_1197466c-f2c7-4a53-ad87-d83665083895"
      unitRef="U_USD">2635000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_b98ec3b4-7aa9-4e00-95f9-1bfe8ed18580"
      unitRef="U_USD">152128000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_2f863334-63d8-4b5f-936c-65d55f5c3548"
      unitRef="U_USD">10593000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_ce891c40-9cf9-4ab1-aa49-564ada400de0"
      unitRef="U_USD">171920000</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_fc0ef29b-6e36-4a45-ada8-c38d762fd22f"
      unitRef="U_USD">13228000</us-gaap:FinanceLeaseLiability>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_f790d710-2236-4364-bd9f-29a834b5e67a">&lt;p id="note_5_debt" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 5 &#x2013; DEBT&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:11pt;font-family:'Calibri',sans-serif;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;At &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 and December 31, 2024, debt consisted of:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.493%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.8%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:17.756%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.8%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:15.217%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.8%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:10.598%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.8%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:8.738000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="4" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="4" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Average&lt;br/&gt;Interest Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Outstanding&lt;br/&gt;Balance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Average&lt;br/&gt;Interest Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Outstanding&lt;br/&gt;Balance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Term Loan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;200,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;200,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Delayed-Draw Term Loan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;154,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;156,750&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Revolving Credit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;150,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;57,225&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Total before debt issuance costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;504,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;414,225&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Unamortized debt issuance costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,206&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,482&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;502,044&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;411,743&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:48.8%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.22%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:21.84%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.22%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:20.919999999999998%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Current portion of long-term debt&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Long-term debt - non-current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;502,044&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;411,743&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;502,044&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;411,743&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;As of March 31, 2025, the Company had &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;448.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; of unused borrowing capacity under the $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;600.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million revolving line of credit under a credit agreement with a group of lenders (the &#x201c;Credit Facility&#x201d;). The unused borrowing capacity is inclusive of outstanding letters of credit totaling &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;. The average interest rate on borrowings under the Credit Facility was &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; for the three months ended March 31, 2025 and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; for the twelve months ended December 31, 2024, respectively. Inclusive of the impact of floating-to-fixed interest rate swaps (see &#x201c;Note 7 &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; Derivative Instruments and Hedging Activities&#x201d;), the average interest rate was &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; for the three months ended March 31, 2025 and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; for the twelve months ended December 31, 2024, respectively.&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:11pt;font-family:'Calibri',sans-serif;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Future scheduled repayments of debt principal are as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.014%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.761%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:15.526%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.761%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:14.986%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.761%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:9.824%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.761%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:8.603%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Payments due by&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Term Loan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Delayed-Draw Term Loan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Revolving Credit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 31, 2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 31, 2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;May 6, 2027 (Maturity)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;200,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;154,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;150,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;504,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;200,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;154,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;150,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;504,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ScheduleOfDebtInstrumentsTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_52bcbd15-3631-4aea-89c9-447b1294a53a">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;At &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 and December 31, 2024, debt consisted of:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.493%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.8%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:17.756%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.8%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:15.217%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.8%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:10.598%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.8%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:8.738000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="4" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="4" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Average&lt;br/&gt;Interest Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Outstanding&lt;br/&gt;Balance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Average&lt;br/&gt;Interest Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Outstanding&lt;br/&gt;Balance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Term Loan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;200,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;200,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Delayed-Draw Term Loan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;154,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;156,750&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Revolving Credit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;150,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;57,225&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Total before debt issuance costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;504,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;414,225&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Unamortized debt issuance costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,206&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,482&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;502,044&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;411,743&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:48.8%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.22%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:21.84%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.22%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:20.919999999999998%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Current portion of long-term debt&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Long-term debt - non-current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;502,044&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;411,743&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;502,044&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;411,743&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</us-gaap:ScheduleOfDebtInstrumentsTextBlock>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_9ee2d019-aa3d-4a4f-9a4a-4cc09920f90b"
      decimals="-3"
      id="F_c76bc49a-3aa2-4326-ac57-3203981c4c20"
      unitRef="U_USD">200250000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_3095a2ed-0bae-42bd-9607-fd26d0bf9a8a"
      decimals="-3"
      id="F_64fb095d-0b59-4cdd-82f8-82b3bc9cce2e"
      unitRef="U_USD">200250000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b"
      decimals="-3"
      id="F_324e437c-9cc7-4177-814c-b9f9f317f83a"
      unitRef="U_USD">154000000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_408a8d7a-adcc-4ee6-b3b7-b6fce8885276"
      decimals="-3"
      id="F_e93755ef-8c9d-4200-9f56-796407684ee1"
      unitRef="U_USD">156750000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_012c42a7-da01-4ce4-bcaf-1ce14733fd9a"
      decimals="-3"
      id="F_7ae19ea3-eda7-4002-82d8-fbc1566aa8f0"
      unitRef="U_USD">150000000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_14e528e0-8808-4d1f-b13a-10ed2d500bec"
      decimals="-3"
      id="F_c776d469-0868-4df0-a2c4-d90ecb79f53f"
      unitRef="U_USD">57225000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentInterestRateDuringPeriod
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="3"
      id="F_47fcb3e8-a959-4ee2-a60a-7b5e928bd2db"
      unitRef="U_pure">0.057</us-gaap:DebtInstrumentInterestRateDuringPeriod>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_95aa6785-17ce-4626-bfd7-0e36fc563284"
      unitRef="U_USD">504250000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentInterestRateDuringPeriod
      contextRef="C_303ab8ab-e9ca-4ffd-b3ef-e1a4befbc6c2"
      decimals="3"
      id="F_9709c9b7-6c26-4945-9fb2-103aadb9bb54"
      unitRef="U_pure">0.066</us-gaap:DebtInstrumentInterestRateDuringPeriod>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_d0acd7c6-ebd3-4324-ac13-aa8c6152a0c6"
      unitRef="U_USD">414225000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_3c33541c-923f-4b5e-83bc-5278b0c4cd50"
      unitRef="U_USD">2206000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_17a697db-784a-42d5-9052-53da582cc0f9"
      unitRef="U_USD">2482000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:LongTermDebt
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_2488c1cf-afb4-42aa-add0-275352fe7610"
      unitRef="U_USD">502044000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_fbd052b4-5d5a-465f-940f-87ea20598539"
      unitRef="U_USD">411743000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_3423a773-329d-44b4-9fd1-1bff2137e4df"
      unitRef="U_USD">0</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_bdddbacc-3047-4511-b030-8987f0f43d21"
      unitRef="U_USD">0</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_dcd55d2a-60ed-42a8-b024-1bd2865f6577"
      unitRef="U_USD">502044000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_8f9567b0-1573-4d64-a67a-fe4511e57780"
      unitRef="U_USD">411743000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebt
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_05ab85f2-a4d0-45aa-836f-d34edba0c669"
      unitRef="U_USD">502044000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_8b240530-a15e-451a-9970-74fc57a1eb86"
      unitRef="U_USD">411743000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentUnusedBorrowingCapacityAmount
      contextRef="C_d077db2c-1201-47ee-97d7-0b2c6edbe4d9"
      decimals="-5"
      id="F_e1f9afbd-1973-4f03-8bfd-e37d8ef193fc"
      unitRef="U_USD">448400000</us-gaap:DebtInstrumentUnusedBorrowingCapacityAmount>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="C_d077db2c-1201-47ee-97d7-0b2c6edbe4d9"
      decimals="INF"
      id="F_1b244886-2d20-4dd9-bd56-dcfd64436851"
      unitRef="U_USD">600000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LettersOfCreditOutstandingAmount
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-5"
      id="F_867aeeea-5dd7-4b75-b92a-92c1ea153c08"
      unitRef="U_USD">1600000</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:LineOfCreditFacilityInterestRateDuringPeriod
      contextRef="C_366bd7da-e2a6-4ff1-bb17-abca9a65eb2c"
      decimals="3"
      id="F_2f13ce20-c8e1-4e13-8556-59acd67e137d"
      unitRef="U_pure">0.057</us-gaap:LineOfCreditFacilityInterestRateDuringPeriod>
    <us-gaap:LineOfCreditFacilityInterestRateDuringPeriod
      contextRef="C_7db129b0-0161-4e6b-98c7-256cbd332f4f"
      decimals="3"
      id="F_149300a2-d47f-459e-b431-c86dbc911efd"
      unitRef="U_pure">0.066</us-gaap:LineOfCreditFacilityInterestRateDuringPeriod>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="C_5fd83144-3897-4f84-96ea-5e88b71cc15c"
      decimals="3"
      id="F_541056e0-d9e7-4e4c-8318-fd96ee5de191"
      unitRef="U_pure">0.051</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="C_5ab8b4c0-990d-48cc-8c7e-798cb22c2869"
      decimals="3"
      id="F_3afd2fe6-a1a3-4cf9-bb03-6deac75c6076"
      unitRef="U_pure">0.053</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_92967bca-1bb1-4132-a857-f899fdd480e0">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Future scheduled repayments of debt principal are as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.014%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.761%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:15.526%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.761%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:14.986%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.761%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:9.824%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.761%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:8.603%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Payments due by&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Term Loan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Delayed-Draw Term Loan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Revolving Credit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 31, 2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;March 31, 2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;May 6, 2027 (Maturity)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;200,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;154,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;150,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;504,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;200,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;154,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;150,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;504,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths
      contextRef="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b"
      decimals="-3"
      id="F_502dbb36-d428-4b91-8d01-39245f07f942"
      unitRef="U_USD">0</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_2f0a2a7c-359e-418e-9ac4-c5afbe18f68f"
      unitRef="U_USD">0</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo
      contextRef="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b"
      decimals="-3"
      id="F_5ff2a22a-8bd0-4143-bb63-521959663184"
      unitRef="U_USD">0</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_858fb7df-619d-462a-bfd3-c2399bf31b89"
      unitRef="U_USD">0</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree
      contextRef="C_9ee2d019-aa3d-4a4f-9a4a-4cc09920f90b"
      decimals="-3"
      id="F_c617adac-8fa0-4ece-aa7d-70540eb4e9c8"
      unitRef="U_USD">200250000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree
      contextRef="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b"
      decimals="-3"
      id="F_442355ef-9a84-4db6-810c-f411b2b88cbb"
      unitRef="U_USD">154000000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree
      contextRef="C_012c42a7-da01-4ce4-bcaf-1ce14733fd9a"
      decimals="-3"
      id="F_1f36f60b-b27e-47af-8583-19ac137ced1e"
      unitRef="U_USD">150000000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_96aa9670-09c3-4ff3-8170-71b5623b1fb9"
      unitRef="U_USD">504250000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearThree>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_9ee2d019-aa3d-4a4f-9a4a-4cc09920f90b"
      decimals="-3"
      id="F_3b0e2131-7312-4219-977a-83f0e401cd7d"
      unitRef="U_USD">200250000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_62bedc3b-5e71-4f16-9cf7-0095462e9b5b"
      decimals="-3"
      id="F_51ecad05-40f9-4810-a918-b2fcc0d8900e"
      unitRef="U_USD">154000000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_012c42a7-da01-4ce4-bcaf-1ce14733fd9a"
      decimals="-3"
      id="F_20ddf47d-624f-4a59-99e9-1efc5016abf2"
      unitRef="U_USD">150000000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_ee4d7710-f9c4-4d71-a446-bb1181081d59"
      unitRef="U_USD">504250000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_ceea30a9-ea47-4eb5-9ef2-8951c298c809">&lt;p id="note_6_revenue_recognition" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 6 &#x2013; REVENUE RECOGNITION&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Disaggregation of Revenue&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company disaggregates revenue from clients into categories that depict how the nature, amount, and uncertainty of revenue and cash flows are affected by economic and business factors. Those categories are client market, client type, and contract mix.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.28%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.4%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Client Markets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Energy, environment, infrastructure, and disaster recovery&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;238,570&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;224,692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;45&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Health and social programs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;169,023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;190,892&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;39&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Security and other civilian &amp;amp; commercial&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;80,025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;78,852&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;487,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;494,436&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.28%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.4%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Client Type:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;U.S. federal government&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;239,620&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;274,195&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;55&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;U.S. state and local government&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;76,865&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;76,953&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;International government&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;27,075&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;25,263&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total Government&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;343,560&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;70&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;376,411&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;76&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Commercial&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;144,058&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;30&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;118,025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;24&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:15pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:2.773%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;487,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;494,436&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.28%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.4%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Contract Mix:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Time-and-materials&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;209,046&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;43&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;206,153&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;42&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Fixed-price&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;238,072&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;224,796&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;45&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Cost-based&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;40,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;63,487&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;487,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;494,436&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Contract Assets and Liabilities&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.173%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Contract assets consist of unbilled receivables on contracts where revenue recognized exceeds the amount billed. Contract liabilities result from advance payments received on a contract or from billings in excess of revenue recognized.&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.173%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table summarizes the contract assets and liabilities as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 and December 31, 2024:&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.173%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:54%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.28%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:18.72%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.28%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:18.72%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Contract assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;228,314&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;188,941&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Contract liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;27,407&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;24,580&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Net contract assets (liabilities)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;200,907&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;164,361&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The increase in net contract assets (liabilities) is primarily due to the timing difference between the performance of services and billings to customers. During both the three months ended March 31, 2025 and 2024, the Company recognized &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;12.8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; in revenue related to the contract liabilities balance at December 31, 2024 and 2023, respectively.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Unfulfilled Performance Obligations&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Unfulfilled performance obligations (&#x201c;UPO&#x201d;) were &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; billion&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;  and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; billion as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_bc987d48-d1fc-496c-8990-f399097b4f71;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and December 31,&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_b9778b98-1a47-4031-839a-f9e0f2a9a2ce;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; 2024&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively. The UPO of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; billion reflects the impact of approximately $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; billion related to the termination-for-convenience notifications the Company received pursuant to the executive orders issued by the Administration or actions by DOGE during the three months ended March 31, 2025.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company expects to recognize the remaining UPO as revenue of approximately &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;53&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; by December 31, &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_b1212fc9-e855-4dc6-9369-8a051e07668d;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;78&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; by December 31, &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_955ea635-1723-4117-9828-3d958dd331cb;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;2026&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, and the remainder thereafter.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Subsequent to March 31, 2025 and through April 25, 2025, the Company received additional notices for termination-for-convenience. Had these termination-for-convenience occurred prior to March 31, 2025, the total UPO would have been reduced by approximately $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;12.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million.&lt;/span&gt;&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_e60b9a97-5a1f-46f4-b214-bbbe972a8634">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company disaggregates revenue from clients into categories that depict how the nature, amount, and uncertainty of revenue and cash flows are affected by economic and business factors. Those categories are client market, client type, and contract mix.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.28%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.4%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Client Markets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Energy, environment, infrastructure, and disaster recovery&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;238,570&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;224,692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;45&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Health and social programs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;169,023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;190,892&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;39&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Security and other civilian &amp;amp; commercial&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;80,025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;78,852&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;487,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;494,436&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.28%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.4%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Client Type:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;U.S. federal government&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;239,620&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;274,195&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;55&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;U.S. state and local government&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;76,865&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;76,953&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;International government&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;27,075&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;25,263&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total Government&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;343,560&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;70&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;376,411&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;76&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Commercial&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;144,058&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;30&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;118,025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;24&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:15pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:2.773%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;487,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;494,436&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.28%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.66%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.379999999999999%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.4%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Dollars&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Percent&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Contract Mix:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Time-and-materials&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;209,046&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;43&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;206,153&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;42&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Fixed-price&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;238,072&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;224,796&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;45&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Cost-based&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;40,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;63,487&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;487,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;494,436&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_4487f286-b161-471f-9f1f-930ddae96456"
      decimals="-3"
      id="F_15cd0265-fa69-4514-92d0-f7b32fa689d2"
      unitRef="U_USD">238570000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_524c1f59-fefa-4b0f-be9d-91e3cedad43d"
      decimals="2"
      id="F_9d69f318-72da-4a6d-8016-67eb5ac46fa7"
      unitRef="U_pure">0.49</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_7c50e895-8ea4-408e-a9f7-6d3eaab5c259"
      decimals="-3"
      id="F_c3719a6c-54c7-41fd-a2f8-c4c6bb425a4d"
      unitRef="U_USD">224692000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_42bd8d7d-8340-4d3f-b1e1-8d37817dce72"
      decimals="2"
      id="F_b6f4450e-f1cd-496c-9775-f5299581fcb8"
      unitRef="U_pure">0.45</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_3ecd6ed2-c36f-414d-93ea-f6382cbe02f8"
      decimals="-3"
      id="F_4b706a2d-d2b1-46ea-9758-c821dd070bcd"
      unitRef="U_USD">169023000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_115f587b-83e0-4c3c-a011-a7e4b770764c"
      decimals="2"
      id="F_0e56ce7e-5e16-4c14-9b2c-092a990193cd"
      unitRef="U_pure">0.35</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_ee2386b3-1d85-48a6-b287-bf7ab1a771b3"
      decimals="-3"
      id="F_bd02ea72-fdce-4138-bf4f-1ae7ffb54a48"
      unitRef="U_USD">190892000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_0aed76c9-e962-4c73-9842-27d5b9f60265"
      decimals="2"
      id="F_67c679d6-eb7e-46dd-8b1f-dc175c9d4269"
      unitRef="U_pure">0.39</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_75d62052-354b-49bd-ad1a-c6542718a3e2"
      decimals="-3"
      id="F_992025b8-d5bc-4e11-b1d4-ea0f6b576b83"
      unitRef="U_USD">80025000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_4e4c9c95-c7ec-42bf-92fc-e01f8841e066"
      decimals="2"
      id="F_f9c266ad-5f66-4856-a15d-315c7cc70be5"
      unitRef="U_pure">0.16</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_765bbd2e-9be5-405b-bd3e-14025deeb60a"
      decimals="-3"
      id="F_0c4cf2d7-407f-432a-8228-b496ea62854b"
      unitRef="U_USD">78852000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_d57ad3e9-6538-4c19-9cd0-d5c27b5f72be"
      decimals="2"
      id="F_aa234376-7a9f-4b18-9200-47803c9ca634"
      unitRef="U_pure">0.16</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_139a5a34-69c2-451e-840a-48fbf18256e8"
      unitRef="U_USD">487618000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_714e3fa3-0bc6-4098-b461-0fc7b3639e7c"
      decimals="INF"
      id="F_59a2896d-4156-4efe-8902-42c29e4069f8"
      unitRef="U_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_20049041-1ea6-41ec-9b70-604730627253"
      unitRef="U_USD">494436000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_db7030f9-fff2-4759-9827-3e00df353c48"
      decimals="INF"
      id="F_f3681b2e-91be-434e-9186-ce519dc61741"
      unitRef="U_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_08338f0b-5a24-4431-bf34-ef6998ad1b46"
      decimals="-3"
      id="F_6b194679-0b9f-475b-87ff-5b04b2f6bf4f"
      unitRef="U_USD">239620000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_f5e4288d-0c00-4986-8cc6-7b8c6cdc84c1"
      decimals="2"
      id="F_672862f3-3b54-4734-9abc-a76d6b6c3de9"
      unitRef="U_pure">0.49</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_c2328f97-1028-4ad0-a3f6-fb8de5b31735"
      decimals="-3"
      id="F_a4e5fa0f-24f7-451e-9a90-e150f7f64eb4"
      unitRef="U_USD">274195000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_069d1d43-0a2e-454f-a95b-6c8f6f730036"
      decimals="2"
      id="F_fc3bfd3e-6ced-4af3-bc2a-864dd45c70ce"
      unitRef="U_pure">0.55</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_4340c5ae-462d-44cd-b66d-499120292957"
      decimals="-3"
      id="F_4efea394-0597-47e9-a07e-99219ca0e9d9"
      unitRef="U_USD">76865000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_efa12804-12fd-42a8-8d38-2679140208f2"
      decimals="2"
      id="F_640ee45b-2525-4625-aea9-670d4881851c"
      unitRef="U_pure">0.16</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_9281c9ab-2f63-4c32-8257-44e78e05c43e"
      decimals="-3"
      id="F_c96a6fa7-91a3-4081-aa70-340a3cae5db5"
      unitRef="U_USD">76953000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_31c84116-404b-4fcd-a354-fed1fee2a202"
      decimals="2"
      id="F_9bf0e931-26ce-4b25-98a1-8617e95e104e"
      unitRef="U_pure">0.16</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_afd050b4-1de2-48ba-978e-e515dea2b202"
      decimals="-3"
      id="F_9625f9e1-507c-4d32-a201-60df3c8b91b8"
      unitRef="U_USD">27075000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_ec625ed0-9d87-438f-bcfb-573cfe9563f3"
      decimals="2"
      id="F_60b315a9-d3d8-4126-84c4-be7abb275d3a"
      unitRef="U_pure">0.05</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_421bd624-4fbd-4ce7-bc99-10481d9ef79a"
      decimals="-3"
      id="F_afb0e12b-c0d2-4329-8641-86e46c91f70c"
      unitRef="U_USD">25263000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_1ab134c6-d4b3-46fa-ab4b-f87ab7775117"
      decimals="2"
      id="F_fbac1842-5464-4751-82fc-706129dbaf20"
      unitRef="U_pure">0.05</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_598c0462-6afd-47c9-b4bb-5b35bc9efb51"
      decimals="-3"
      id="F_733a42cd-0dfc-4349-a2d6-743db7f6a1ee"
      unitRef="U_USD">343560000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_1f0fbfd3-298d-441a-94a2-ee47916fe352"
      decimals="2"
      id="F_85d32422-39aa-4c32-92da-d10c39fbb584"
      unitRef="U_pure">0.70</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_dcb9f15f-7dbf-4c24-ba62-4371bc6681ca"
      decimals="-3"
      id="F_a69eeb8d-4ff1-4014-b4aa-7d79e1fe1558"
      unitRef="U_USD">376411000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_0a7ca982-a79b-42fc-8208-71975a520f92"
      decimals="2"
      id="F_9617c261-f7fa-4ac0-b236-f664e3152b20"
      unitRef="U_pure">0.76</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_7827564c-2547-4664-83a9-5dbd1c5a1e12"
      decimals="-3"
      id="F_3b78a552-1ba6-4c55-955a-2ea98be882ee"
      unitRef="U_USD">144058000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_ca3d0338-6140-447b-bd71-0ce3e3b69b4b"
      decimals="2"
      id="F_ed7e00f9-aca9-4b98-a649-7bf68a52b074"
      unitRef="U_pure">0.30</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_420fadfa-6fa7-4e06-a0bf-aed952d980b6"
      decimals="-3"
      id="F_566245e1-7932-43aa-a00e-ba5d1923e706"
      unitRef="U_USD">118025000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_0f664dab-464c-49d8-9f1a-a047dc72f783"
      decimals="2"
      id="F_bd864315-d1ff-4963-aebe-a56bbc269403"
      unitRef="U_pure">0.24</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_cf1a70c6-446d-405c-af78-8ee987902f99"
      unitRef="U_USD">487618000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_714e3fa3-0bc6-4098-b461-0fc7b3639e7c"
      decimals="INF"
      id="F_4675565a-90a9-46e4-a670-62ed876a8d97"
      unitRef="U_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_253eb21e-42ce-4f85-a922-227e0c64070f"
      unitRef="U_USD">494436000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_db7030f9-fff2-4759-9827-3e00df353c48"
      decimals="INF"
      id="F_018c2755-d3f1-45fa-b500-0f1e18a4f2f2"
      unitRef="U_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_832766b3-22da-46ec-90fa-22ffcee71b17"
      decimals="-3"
      id="F_8528d200-bd23-45f6-8ba0-cddd8302235b"
      unitRef="U_USD">209046000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_6fe8c294-29ff-487d-9d7b-390239496c02"
      decimals="2"
      id="F_f7df0978-0303-4d43-9aa4-dcc34434fa30"
      unitRef="U_pure">0.43</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_7782ddb3-fe57-4895-bf93-617a0c9a2238"
      decimals="-3"
      id="F_1c69ee41-59eb-4b7d-9a13-2f54c32947e8"
      unitRef="U_USD">206153000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_46cd81a1-3db3-42f6-b3ab-758fd659bee5"
      decimals="2"
      id="F_04e78c4b-bb27-47a0-a11b-10d3a15630a5"
      unitRef="U_pure">0.42</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_7e5d1f96-5f21-4b79-bf44-f99192a42dda"
      decimals="-3"
      id="F_c7eca1d9-65d0-4780-8540-20e353b1ccd4"
      unitRef="U_USD">238072000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_154e9ced-a7bc-4168-87ae-5d6b9aae4177"
      decimals="2"
      id="F_9a263142-f857-4c36-8ec7-ee8b5ce312be"
      unitRef="U_pure">0.49</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_fcab69ee-709e-4d1e-b8fb-65f72a7ce8db"
      decimals="-3"
      id="F_290d326c-8c2f-4939-a755-2af5ddcf427d"
      unitRef="U_USD">224796000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_c2980db3-f07f-4041-82b0-ed1219de7116"
      decimals="2"
      id="F_15d0bb40-8442-4d18-acdd-ae2e103cb1c1"
      unitRef="U_pure">0.45</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_acb4e0fa-acb4-4617-8aa5-06cf651f97f4"
      decimals="-3"
      id="F_447645af-dd66-477e-9360-733284427da4"
      unitRef="U_USD">40500000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_5ce863bf-c10b-40aa-a28b-5d32c8cb7fd9"
      decimals="2"
      id="F_f4d26426-b996-4a05-8e5f-adaa07d1422b"
      unitRef="U_pure">0.08</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_f43c9e8b-2753-4f81-a850-d05b66f6083c"
      decimals="-3"
      id="F_5fb59c87-7fc6-4514-a02d-96aa41e8567c"
      unitRef="U_USD">63487000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_420fce3b-d577-4598-a8cb-7b980ea4a3a9"
      decimals="2"
      id="F_2088ab4a-eeea-468d-a038-4d8ce2475d97"
      unitRef="U_pure">0.13</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_ea1305a0-5602-4b37-b197-8929d8d6efae"
      unitRef="U_USD">487618000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_714e3fa3-0bc6-4098-b461-0fc7b3639e7c"
      decimals="INF"
      id="F_52554f1b-efc4-489f-8cb3-98a6e68025ff"
      unitRef="U_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_0a156051-0e04-4b4c-b1f6-90db5e9f2e53"
      unitRef="U_USD">494436000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_db7030f9-fff2-4759-9827-3e00df353c48"
      decimals="INF"
      id="F_c2c8c2d9-2b7a-489b-a955-7050aa00cbb8"
      unitRef="U_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_2751b50d-573e-420f-93a1-50309312bff6">&lt;p style="text-indent:4.173%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table summarizes the contract assets and liabilities as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 and December 31, 2024:&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.173%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:54%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.28%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:18.72%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.28%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:18.72%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Contract assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;228,314&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;188,941&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Contract liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;27,407&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;24,580&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Net contract assets (liabilities)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;200,907&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;164,361&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_53668d3e-bb6a-48f8-a4ad-06a56992befd"
      unitRef="U_USD">228314000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_c3139f81-cf89-46b1-8475-3135dc2dc03c"
      unitRef="U_USD">188941000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_aa04f7e6-a076-4975-9f1b-1e35a8b47657"
      unitRef="U_USD">27407000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_3dbeb6ac-9536-40f9-8b5e-73671e40f1e8"
      unitRef="U_USD">24580000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <icfi:ContractWithCustomerAssetsLiabilitiesNetCurrent
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-3"
      id="F_aee5b8d0-b013-4a69-a96d-0368d2aafa38"
      unitRef="U_USD">200907000</icfi:ContractWithCustomerAssetsLiabilitiesNetCurrent>
    <icfi:ContractWithCustomerAssetsLiabilitiesNetCurrent
      contextRef="C_15f9cc62-57d3-4011-868e-fa21d140029f"
      decimals="-3"
      id="F_683e1eaf-27e5-4f2e-af9c-d7c73ffca107"
      unitRef="U_USD">164361000</icfi:ContractWithCustomerAssetsLiabilitiesNetCurrent>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-5"
      id="F_9d4566c8-d6f2-4fa1-b7a0-684d6f111b3c"
      unitRef="U_USD">12800000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-5"
      id="F_5583ea39-e480-40d0-845b-384ca618db59"
      unitRef="U_USD">12800000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_cc0c285b-722e-4ae4-9191-0208c84dc361"
      decimals="-8"
      id="F_46422ea6-8a00-4df3-8134-001488a4fe43"
      unitRef="U_USD">900000000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_b1f58b6a-aabd-48ae-a826-4b7bf82c9268"
      decimals="-8"
      id="F_3ad05271-195a-46dd-a043-088e14620818"
      unitRef="U_USD">1300000000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_cc0c285b-722e-4ae4-9191-0208c84dc361"
      decimals="-8"
      id="F_5391347f-a524-4ad3-9789-0dbb40eda0f2"
      unitRef="U_USD">900000000</us-gaap:RevenueRemainingPerformanceObligation>
    <icfi:IncreaseDecreaseInUnfulfilledPerformanceObligations
      contextRef="C_83b896a0-9a12-4146-82cd-1b0ee089bc6a"
      decimals="-8"
      id="F_b6a26d1c-c689-4180-8163-908423bbdef3"
      unitRef="U_USD">300000000</icfi:IncreaseDecreaseInUnfulfilledPerformanceObligations>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="C_cc0c285b-722e-4ae4-9191-0208c84dc361"
      decimals="2"
      id="F_983e5328-26c9-4525-82b6-8950803c788f"
      unitRef="U_pure">0.53</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="C_e96a556f-6c8b-4c69-990b-3cf7504d7de3"
      decimals="2"
      id="F_7796c2f9-decd-41ce-bc83-6d2b1f85f65b"
      unitRef="U_pure">0.78</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <icfi:IncreaseDecreaseInUnfulfilledPerformanceObligations
      contextRef="C_9ace2ee2-4780-404f-8831-c4897a9e81d6"
      decimals="-5"
      id="F_2456ad7b-4466-42ba-91e7-9c065abac8ff"
      unitRef="U_USD">12000000</icfi:IncreaseDecreaseInUnfulfilledPerformanceObligations>
    <us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_55284614-2d99-4077-857c-563fd35f718d">&lt;p id="note_7_derivative_instruments_and_hedge" style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 7 &#x2013; DERIVATIVE INSTRUMENTS AND HEDGING ACTIVITIES&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;At March 31, 2025&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, the Company had floating-to-fixed interest rate swap agreements for an aggregate notional amount of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;175.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million,&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; of which $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;75.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million will mature on &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;February 28, 2028&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million will mature on &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;June 27, 2028&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;. The Company has designated the swap agreements as cash flow hedges. See &#x201c;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Note 5 &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; Debt&#x201d; for details on the impact of the swap agreements on the Company&#x2019;s interest rates. See &#x201c;Note 13 &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; Fair Value&#x201d; for the fair value of these swaps.&lt;/span&gt;&lt;/p&gt;</us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock>
    <us-gaap:DerivativeNotionalAmount
      contextRef="C_5fd83144-3897-4f84-96ea-5e88b71cc15c"
      decimals="-5"
      id="F_1ffb5b27-c589-4743-8384-c7a0a55a50c9"
      unitRef="U_USD">175000000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="C_5581414c-697a-4843-b00e-872556ab5b09"
      decimals="-6"
      id="F_2594c52d-e65f-4b3a-b4e6-cafdd617c516"
      unitRef="U_USD">75000000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeMaturityDates
      contextRef="C_edaaa534-a6bd-4967-a81a-123d9286b9ad"
      id="F_90e18f25-6c27-4c64-b2e1-a22d6deee72b">2028-02-28</us-gaap:DerivativeMaturityDates>
    <us-gaap:DerivativeNotionalAmount
      contextRef="C_1197b833-3595-4136-8376-51bbb5058b00"
      decimals="-6"
      id="F_2ab946f7-d71e-4b97-b4e4-1e18d5b57ee5"
      unitRef="U_USD">100000000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeMaturityDates
      contextRef="C_8dc3cce5-4ddf-447b-8665-f21c71a4ef29"
      id="F_21fe814b-e62f-4e02-9d19-0b156bd06aed">2028-06-27</us-gaap:DerivativeMaturityDates>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_9fcf3938-fc14-4c05-a45e-0b94e08176d5">&lt;p id="note_8_income_taxes" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 8 &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#x2013; INCOME TAXES&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;A reconciliation of the Company&#x2019;s statutory rate to the effective tax rate (the &#x201c;ETR&#x201d;) for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024 is as follows:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:60.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.98%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:8.26%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:10.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Statutory tax rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;State taxes, net of federal benefit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Section 987 regulations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;14.8&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Equity-based compensation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.5&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.4&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Uncertain tax position&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3.9&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2.5&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Tax credits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11.3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.7&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Effective tax rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10.5&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;20.4&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The decrease in the Company&#x2019;s ETR was primarily due to an income tax benefit recognized in the first quarter of 2025 from tax planning implemented in connection with the &#x201c;transitional rules&#x201d; governing unrealized foreign exchange gains and losses derived from translation of the operations, assets and liabilities of non-U.S. qualified subsidiaries provided by recently finalized U.S. federal tax regulations under Internal Revenue Code Section 987 (&#x201c;IRC 987&#x201d;). The regulations under IRC 987 are effective for the Company for tax years beginning after December 31, 2024 and require computation of a pre-transition foreign currency gain or loss to be included in the determination of future taxable income or loss and an analysis of the various elections available to taxpayers. Based on the Company&#x2019;s current analysis of the regulations and the available election to amortize its pre-2025 cumulative unrealized foreign exchange gains &amp;amp; losses impacting U.S. taxation of foreign earnings under Subpart F of the Internal Revenue Code, the Company recognized a non-cash deferred income tax benefit of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million related to its election to amortize its pre-transition foreign currency losses against taxable income over &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;ten years&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;/p&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_822d5385-994c-486e-b100-1fac8d8f85a1">&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;A reconciliation of the Company&#x2019;s statutory rate to the effective tax rate (the &#x201c;ETR&#x201d;) for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024 is as follows:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:60.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.98%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:8.26%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:10.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Statutory tax rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;State taxes, net of federal benefit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Section 987 regulations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;14.8&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Equity-based compensation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.5&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.4&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Uncertain tax position&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3.9&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2.5&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Tax credits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11.3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.7&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Effective tax rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10.5&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;20.4&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="INF"
      id="F_e2cfbb4c-396a-4fe3-bbbd-5ff948db5a5e"
      unitRef="U_pure">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="INF"
      id="F_d684cb81-c860-4478-a209-57fab7e51ed7"
      unitRef="U_pure">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="3"
      id="F_9a4a44f2-597f-469d-bc14-af6c696234f6"
      unitRef="U_pure">0.06</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="3"
      id="F_7bdf9958-96b7-467b-8c60-36b19dda1b1b"
      unitRef="U_pure">0.06</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="3"
      id="F_c7f9cd83-b3b0-4d84-933a-71758fb52993"
      unitRef="U_pure">-0.148</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="3"
      id="F_888087bc-c0ee-468b-aa04-726d06d3d2b4"
      unitRef="U_pure">0.015</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="3"
      id="F_16888b51-2e21-4682-bee7-3990acb0ac0b"
      unitRef="U_pure">-0.054</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <icfi:EffectiveIncomeTaxRateReconciliationUncertainTaxPosition
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="3"
      id="F_bc0082f5-8fbc-4772-a5a9-8bb501474c62"
      unitRef="U_pure">0.039</icfi:EffectiveIncomeTaxRateReconciliationUncertainTaxPosition>
    <icfi:EffectiveIncomeTaxRateReconciliationUncertainTaxPosition
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="3"
      id="F_1e68a0e2-45bc-4bbd-bc48-eed50db34ee0"
      unitRef="U_pure">0.025</icfi:EffectiveIncomeTaxRateReconciliationUncertainTaxPosition>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="3"
      id="F_1b7c38eb-2b62-4fb4-8e84-63cd9cbcce8b"
      unitRef="U_pure">0.113</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="3"
      id="F_eafcc5b3-3dac-4d05-956a-1e53bab59b77"
      unitRef="U_pure">0.067</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="3"
      id="F_6a041627-51df-450a-9f0f-4ff7b957b8ea"
      unitRef="U_pure">0.042</us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="3"
      id="F_e2e43c74-b007-452d-9d65-735f482c1441"
      unitRef="U_pure">0.03</us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="3"
      id="F_62f7d6bf-7c68-44a6-84b7-706913a9ce9a"
      unitRef="U_pure">0.105</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="3"
      id="F_a5e4c531-10f3-440e-a7b2-c355958d79cc"
      unitRef="U_pure">0.204</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-5"
      id="F_5f148e16-dc7b-4f2b-bf87-4f8e31a086e7"
      unitRef="U_USD">-4500000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <icfi:AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_5125fd91-5a68-48c8-93df-875adfb5410f">P10Y</icfi:AmortizationPeriodOfPreTransitionForeignCurrencyLossesAgainstTaxableIncome>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_f4a85c07-6baa-444b-a90a-7f6b614b2fa0">&lt;p id="note_9_stockholders_equity" style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 9 &#x2013; STOCKHOLDERS&#x2019; EQUITY&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Accumulated Other Comprehensive Loss&lt;/span&gt;&lt;/p&gt;&lt;div&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Accumulated other comprehensive loss as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 and 2024 included the following:&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:52.921%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.145000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.705%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.145000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Foreign&lt;br/&gt;Currency&lt;br/&gt;Translation&lt;br/&gt;Adjustments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Change in&lt;br/&gt;Fair Value of&lt;br/&gt;Interest Rate&lt;br/&gt;Hedge&lt;br/&gt;Agreements&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accumulated other comprehensive (loss) income at December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16,383&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;637&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;15,746&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Current period other comprehensive (loss) income:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other comprehensive (loss) income before reclassifications&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,273&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,854&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,419&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Amounts reclassified from accumulated other comprehensive (loss) income &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(1) (2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,094&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;691&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,785&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Effect of taxes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;653&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;653&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total current period other comprehensive (loss) income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;821&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,892&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,713&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accumulated other comprehensive (loss) income at March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;17,204&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,255&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,459&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;(1) &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company reclassified $&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million of effect of taxes related to Foreign Currency Translation Adjustments from accumulated other comprehensive (loss) income into earnings in connection with IRC 987. &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;See &#x201c;Note 8 &#x2013; Income Taxes&#x201d;.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;(2) &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company expects to reclassify approximately $&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million of unrealized losses related to the Change in Fair Value of Interest Rate Hedge Agreements from accumulated other comprehensive (loss) income into earnings during the next 12 months.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:52.921%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.145000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.705%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.145000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Foreign&lt;br/&gt;Currency&lt;br/&gt;Translation&lt;br/&gt;Adjustments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Change in&lt;br/&gt;Fair Value of&lt;br/&gt;Interest Rate&lt;br/&gt;Hedge&lt;br/&gt;Agreement and Other Adjustments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accumulated other comprehensive (loss) income at December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;12,695&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;810&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11,885&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Current period other comprehensive (loss) income:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other comprehensive (loss) income before reclassifications&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,534&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,589&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,055&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5.05pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.933%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Amounts reclassified from accumulated other comprehensive (loss) income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Effect of taxes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;112&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;812&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total current period other comprehensive (loss) income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,422&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,106&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;684&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accumulated other comprehensive (loss) income at March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;14,117&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,916&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11,201&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Share Repurchases&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company repurchases shares under the $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;300.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million share repurchase program authorized by the Company&#x2019;s board of directors. &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;In addition, the Company repurchases shares in connection with the vesting of restricted stock units (&#x201c;RSUs&#x201d;) and performance share awards (&#x201c;PSAs&#x201d;) &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;granted to employees. &lt;/span&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Repurchases for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024 are as follows:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:30.96%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.52%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:15.280000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.42%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.04%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:15.780000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="12" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="5" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="5" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Amount Paid&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Amount Paid&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Share Repurchase Program&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;313,048&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;35,052&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;172,817&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,831&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Vesting of RSUs and PSAs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;42,810&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,296&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;45,881&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6,649&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;355,858&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;39,348&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;218,698&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;30,480&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_2cdd3456-f952-4e0a-be3f-993f5c89997a">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Accumulated other comprehensive loss as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025 and 2024 included the following:&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:52.921%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.145000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.705%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.145000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Foreign&lt;br/&gt;Currency&lt;br/&gt;Translation&lt;br/&gt;Adjustments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Change in&lt;br/&gt;Fair Value of&lt;br/&gt;Interest Rate&lt;br/&gt;Hedge&lt;br/&gt;Agreements&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accumulated other comprehensive (loss) income at December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16,383&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;637&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;15,746&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Current period other comprehensive (loss) income:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other comprehensive (loss) income before reclassifications&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,273&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,854&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,419&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Amounts reclassified from accumulated other comprehensive (loss) income &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(1) (2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,094&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;691&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,785&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Effect of taxes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;653&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;653&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total current period other comprehensive (loss) income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;821&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,892&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,713&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accumulated other comprehensive (loss) income at March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;17,204&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,255&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,459&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;(1) &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company reclassified $&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million of effect of taxes related to Foreign Currency Translation Adjustments from accumulated other comprehensive (loss) income into earnings in connection with IRC 987. &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;See &#x201c;Note 8 &#x2013; Income Taxes&#x201d;.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;(2) &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company expects to reclassify approximately $&lt;/span&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million of unrealized losses related to the Change in Fair Value of Interest Rate Hedge Agreements from accumulated other comprehensive (loss) income into earnings during the next 12 months.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:52.921%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.145000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.705%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.361%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.145000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Foreign&lt;br/&gt;Currency&lt;br/&gt;Translation&lt;br/&gt;Adjustments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Change in&lt;br/&gt;Fair Value of&lt;br/&gt;Interest Rate&lt;br/&gt;Hedge&lt;br/&gt;Agreement and Other Adjustments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accumulated other comprehensive (loss) income at December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;12,695&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;810&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11,885&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Current period other comprehensive (loss) income:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other comprehensive (loss) income before reclassifications&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,534&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,589&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,055&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5.05pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.933%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Amounts reclassified from accumulated other comprehensive (loss) income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Effect of taxes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;112&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;812&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:1.853%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total current period other comprehensive (loss) income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,422&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,106&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;684&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accumulated other comprehensive (loss) income at March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;14,117&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,916&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11,201&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:5.36pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:StockholdersEquity
      contextRef="C_11354c7f-7371-4601-8c66-053545e8fdee"
      decimals="-3"
      id="F_dabf1ebb-8872-43d1-8db9-f97060d47715"
      unitRef="U_USD">-16383000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_e27d3e7d-ee94-449b-bf1d-82c286cd3fe5"
      decimals="-3"
      id="F_bfc5207c-8a45-460d-8981-e011584390dc"
      unitRef="U_USD">637000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_b476051d-acdb-427d-8f5d-2aebbd684943"
      decimals="-3"
      id="F_04caad66-5e22-4256-9cb9-3c1aa3d81c18"
      unitRef="U_USD">-15746000</us-gaap:StockholdersEquity>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="C_c6b1312a-edb1-4a3b-9f7f-b97f285aa893"
      decimals="-3"
      id="F_e0de9a63-fbe4-42be-87cc-732950f1b834"
      unitRef="U_USD">3273000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="C_f86e4dea-16a2-4319-b4dd-9bb5ce4a0825"
      decimals="-3"
      id="F_8f0fe3b6-b162-400e-aab8-d0f0e4c9c899"
      unitRef="U_USD">-1854000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139"
      decimals="-3"
      id="F_105330c3-1f9b-432e-b5cf-7175c1b6ad5a"
      unitRef="U_USD">1419000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="C_c6b1312a-edb1-4a3b-9f7f-b97f285aa893"
      decimals="-3"
      id="F_c0bec086-e6da-4280-baa3-a0ffbb10676b"
      unitRef="U_USD">4094000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="C_f86e4dea-16a2-4319-b4dd-9bb5ce4a0825"
      decimals="-3"
      id="F_254c6068-cd9c-41dc-9dfc-1545e23c0e43"
      unitRef="U_USD">691000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139"
      decimals="-3"
      id="F_9672d8e5-b2d5-44e8-9ee9-1d87baeee88e"
      unitRef="U_USD">4785000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1
      contextRef="C_f86e4dea-16a2-4319-b4dd-9bb5ce4a0825"
      decimals="-3"
      id="F_cbcdfcb4-0ade-4670-aeff-b1d78bf76a71"
      unitRef="U_USD">-653000</us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1>
    <us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1
      contextRef="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139"
      decimals="-3"
      id="F_5c81dfa6-1e7a-42ec-bd0d-aea4a9bba085"
      unitRef="U_USD">-653000</us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_c6b1312a-edb1-4a3b-9f7f-b97f285aa893"
      decimals="-3"
      id="F_e36fab6b-6e1d-4114-9ce1-e53659b6a154"
      unitRef="U_USD">-821000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_f86e4dea-16a2-4319-b4dd-9bb5ce4a0825"
      decimals="-3"
      id="F_b1fe9bc6-cc8f-4983-a87e-e3df1620571e"
      unitRef="U_USD">-1892000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_f4b30df8-10dd-4889-8ae7-72d2cfe55139"
      decimals="-3"
      id="F_fb8cf425-76ca-4927-89fa-92da0d909bca"
      unitRef="U_USD">-2713000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:StockholdersEquity
      contextRef="C_1aafb042-ee6c-4f5e-ba1e-10950a029c05"
      decimals="-3"
      id="F_9b64d21d-b615-43d6-b4ec-61c4eda30811"
      unitRef="U_USD">-17204000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_95e13872-fc31-450f-9cd0-90ee77c03bf3"
      decimals="-3"
      id="F_d3f66dc4-a35d-4aef-b242-317a7c83ec3b"
      unitRef="U_USD">-1255000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_03f68630-29e5-4ea8-ae0e-5ea8d827f734"
      decimals="-3"
      id="F_73e84396-88e1-4890-b40c-906d61097ee3"
      unitRef="U_USD">-18459000</us-gaap:StockholdersEquity>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="C_c6b1312a-edb1-4a3b-9f7f-b97f285aa893"
      decimals="-5"
      id="F_4d621d84-a834-4938-9b16-02f2b299c02b"
      unitRef="U_USD">4100000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-5"
      id="F_fdbf46b6-fcb4-4052-8f2e-f570f96493bb"
      unitRef="U_USD">-100000</us-gaap:InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet>
    <us-gaap:StockholdersEquity
      contextRef="C_41834a87-ffb8-4b29-9f7a-04009c22d2d8"
      decimals="-3"
      id="F_4b603048-154b-4729-b929-9fbbf3b60339"
      unitRef="U_USD">-12695000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_3517c095-337d-4942-b8d2-d306b64e8337"
      decimals="-3"
      id="F_2d2319b2-75ef-4f88-a357-774b04dab794"
      unitRef="U_USD">810000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_6fac847c-8078-41ea-89da-f86c78130f0b"
      decimals="-3"
      id="F_3bee3819-7568-49e2-8f34-0ab6adaca60a"
      unitRef="U_USD">-11885000</us-gaap:StockholdersEquity>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="C_a012e2e7-4fcc-4a9a-b1cb-41f5afedd048"
      decimals="-3"
      id="F_3c40f98c-186e-4317-81da-598dfb9b7dc1"
      unitRef="U_USD">-1534000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="C_eadcbac7-05a9-43c6-bb48-2856312f45de"
      decimals="-3"
      id="F_39ab872f-16b3-4b6d-a12b-0771566b10da"
      unitRef="U_USD">4589000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent
      contextRef="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135"
      decimals="-3"
      id="F_40707769-e11b-4f4f-8b6d-781cea357590"
      unitRef="U_USD">3055000</us-gaap:OciBeforeReclassificationsNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="C_eadcbac7-05a9-43c6-bb48-2856312f45de"
      decimals="-3"
      id="F_8d301182-55e8-4cfd-a124-2872996946d0"
      unitRef="U_USD">1671000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent
      contextRef="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135"
      decimals="-3"
      id="F_369cbb95-9e66-4dbf-8d90-3af58acc1d70"
      unitRef="U_USD">1671000</us-gaap:ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1
      contextRef="C_a012e2e7-4fcc-4a9a-b1cb-41f5afedd048"
      decimals="-3"
      id="F_50de9858-b747-4d73-aed6-6522780202dd"
      unitRef="U_USD">-112000</us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1>
    <us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1
      contextRef="C_eadcbac7-05a9-43c6-bb48-2856312f45de"
      decimals="-3"
      id="F_06baccde-8c79-4e29-beee-c0e692d012ff"
      unitRef="U_USD">812000</us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1>
    <us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1
      contextRef="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135"
      decimals="-3"
      id="F_38a59130-5892-4ed0-9ae7-2cdf28be807c"
      unitRef="U_USD">700000</us-gaap:OtherComprehensiveIncomeLossTaxPortionAttributableToParent1>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_a012e2e7-4fcc-4a9a-b1cb-41f5afedd048"
      decimals="-3"
      id="F_d5fc2e54-8ad7-47ef-948f-33deec43b658"
      unitRef="U_USD">-1422000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_eadcbac7-05a9-43c6-bb48-2856312f45de"
      decimals="-3"
      id="F_64ae01c8-9fbd-45bc-ab99-8d43157a6337"
      unitRef="U_USD">2106000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="C_a404a0f2-a769-4cd2-b1e5-2f69197a5135"
      decimals="-3"
      id="F_50fe6b4d-66d1-4fd0-9b8e-14673d4f8ae4"
      unitRef="U_USD">684000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:StockholdersEquity
      contextRef="C_f0215c95-f102-42e2-9f17-aff7eb1fc531"
      decimals="-3"
      id="F_a10e59f5-b0bb-4036-ab67-242dc252e231"
      unitRef="U_USD">-14117000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_e465158c-a18e-4d0f-9021-610445a089aa"
      decimals="-3"
      id="F_6196cf41-64ce-4f42-be6f-777013d37ec9"
      unitRef="U_USD">2916000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_3b951961-6572-4dbd-a007-2443f0726987"
      decimals="-3"
      id="F_3ab7032d-5202-458e-9f47-bc7937862d82"
      unitRef="U_USD">-11201000</us-gaap:StockholdersEquity>
    <srt:StockRepurchaseProgramAuthorizedAmount1
      contextRef="C_eaf8d061-8b32-4c51-a3e3-903022a6b165"
      decimals="INF"
      id="F_1adc725c-bc82-4ebf-8070-cd49e5d89cad"
      unitRef="U_USD">300000000</srt:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:ScheduleOfTreasuryStockByClassTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_64cae246-c84d-4b51-b679-254b0642c600">&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Repurchases for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024 are as follows:&lt;/span&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:30.96%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.52%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:15.280000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.42%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:16.04%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:15.780000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="12" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="5" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="5" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Amount Paid&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Amount Paid&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Share Repurchase Program&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;313,048&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;35,052&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;172,817&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,831&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Vesting of RSUs and PSAs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;42,810&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,296&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;45,881&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6,649&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;355,858&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;39,348&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;218,698&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;30,480&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</us-gaap:ScheduleOfTreasuryStockByClassTextBlock>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="C_c2b01a05-d0c9-47fe-9d80-fde68bdf35ad"
      decimals="0"
      id="F_38807b69-3258-498f-ab45-e3225933488f"
      unitRef="U_shares">313048</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="C_c2b01a05-d0c9-47fe-9d80-fde68bdf35ad"
      decimals="-3"
      id="F_1fea5a38-4a63-4441-9fd1-f7af8bec7d00"
      unitRef="U_USD">35052000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="C_86ed4c32-a07f-435c-a2de-68d84ca46f52"
      decimals="0"
      id="F_e4d83f24-1798-4efe-8769-57304c8bc759"
      unitRef="U_shares">172817</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="C_86ed4c32-a07f-435c-a2de-68d84ca46f52"
      decimals="-3"
      id="F_e0e6ae4f-d834-4650-856f-b35a0154bc29"
      unitRef="U_USD">23831000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="C_1cddb288-e964-451e-a81a-0f4156fafa21"
      decimals="0"
      id="F_b309e7df-b282-49aa-8609-c8fc94dd0ce3"
      unitRef="U_shares">42810</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="C_1cddb288-e964-451e-a81a-0f4156fafa21"
      decimals="-3"
      id="F_b4f6cb7d-38d5-447f-b4cd-10b943c1a325"
      unitRef="U_USD">4296000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="C_d0ecbed3-ba12-4ba8-970b-d8efdb285e1e"
      decimals="0"
      id="F_ed850f99-98fc-46a1-89c8-7a9d69a3c154"
      unitRef="U_shares">45881</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="C_d0ecbed3-ba12-4ba8-970b-d8efdb285e1e"
      decimals="-3"
      id="F_663dca13-b564-4fcb-ba4f-74d1019e4cc3"
      unitRef="U_USD">6649000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="0"
      id="F_576efa06-03e8-457d-848a-05519bb308c0"
      unitRef="U_shares">355858</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_1b6718f4-35f9-46b0-8ffa-e997a37073b7"
      unitRef="U_USD">39348000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="0"
      id="F_2afeb81a-d352-4cd2-aa67-5f719ffc9f5e"
      unitRef="U_shares">218698</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_871e623e-5a58-46cf-b0dd-768b809afb17"
      unitRef="U_USD">30480000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_585baf2c-1489-4aac-98b6-999678cba62c">&lt;p id="note_10_stockbased_awards" style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 10 &#x2013; STOCK-BASED COMPENSATION&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company&#x2019;s 2018 Amended and Restated Omnibus Incentive Plan (the &#x201c;2018 A&amp;amp;R Omnibus Plan&#x201d;) allows the Company to grant up to &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,050,000&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; total shares of common stock to officers, key employees, and non-employee directors. As of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025, the Company had approximately &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;794,760&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; shares available for grant under the 2018 A&amp;amp;R Omnibus Plan.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following awards were granted during the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024:&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.413%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.74%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:10.958%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.18%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.418%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.218%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.5%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.378%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Awards Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Average Grant Date Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Employee Stock Awards&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;218,034&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;110,754&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;81.93&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;156.16&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Cash-Settled RSUs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;73,078&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;34,064&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;84.83&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;152.59&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;291,112&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;144,818&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; The total stock-based compensation expense was &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; for the three months ended March 31, 2025 and 2024, respectively. The unrecognized compensation expense at March 31, 2025 was &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;41.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, which is expected to vest over the next &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;2.1&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="C_3cd9094a-0fe5-47f4-88e8-26bd8d9c814f"
      decimals="INF"
      id="F_45207c83-db85-40a5-a7ca-3684132a9381"
      unitRef="U_shares">2050000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="C_34fefb41-e415-441d-8e0d-1e45cd55375d"
      decimals="INF"
      id="F_fe9c2174-3be3-4b18-b07f-40bbeb09f83b"
      unitRef="U_shares">794760</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_04cfd77f-c77b-4fa7-994c-41d74ccc5f37">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following awards were granted during the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2025 and 2024:&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:36.413%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.74%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:10.958%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.18%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.418%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.2%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:11.218%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.5%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:12.378%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Awards Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Average Grant Date Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Employee Stock Awards&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;218,034&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;110,754&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;81.93&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;156.16&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Cash-Settled RSUs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;73,078&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;34,064&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;84.83&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;152.59&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;291,112&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;144,818&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_5b2f62c2-6ae0-4941-81f5-762b8a422db0"
      decimals="0"
      id="F_77d3b3b7-a37e-4688-8136-70ec5ec75e25"
      unitRef="U_shares">218034</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_c7ab718a-ae03-4c39-bd1e-e53f0f8c990e"
      decimals="0"
      id="F_b7c7a368-ec36-4507-b63c-bce8117aeb67"
      unitRef="U_shares">110754</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_5b2f62c2-6ae0-4941-81f5-762b8a422db0"
      decimals="2"
      id="F_349ed3ec-d321-4401-9f9a-df05858fb7d8"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">81.93</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_c7ab718a-ae03-4c39-bd1e-e53f0f8c990e"
      decimals="2"
      id="F_353dcee3-a447-4ebc-9c02-e5f56c5538b6"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">156.16</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_afd9333b-a288-4f47-af97-3870f9bf83fc"
      decimals="0"
      id="F_450c2356-b227-4955-a889-f7dbdbe53e1d"
      unitRef="U_shares">73078</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_600d0231-174b-43f7-ab40-55ba78417e39"
      decimals="0"
      id="F_a7ffc857-8746-4bad-8434-77bc7ebe50e9"
      unitRef="U_shares">34064</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_afd9333b-a288-4f47-af97-3870f9bf83fc"
      decimals="2"
      id="F_57f9c683-7277-424a-881c-1aec5b1a7bcd"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">84.83</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_600d0231-174b-43f7-ab40-55ba78417e39"
      decimals="2"
      id="F_e0aa6575-286d-4235-8427-6867ba1bb93b"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">152.59</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="0"
      id="F_f7bd3d07-0253-42d2-949b-1d9e13796b5c"
      unitRef="U_shares">291112</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="0"
      id="F_9b67dc8d-2e3e-48ea-885f-5b019b3c01e8"
      unitRef="U_shares">144818</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-5"
      id="F_7c586810-0184-4490-aa51-20f458435d7b"
      unitRef="U_USD">4000000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-5"
      id="F_0418b130-dc2c-455c-a493-4759926724c9"
      unitRef="U_USD">5900000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="C_4dbf6bbc-faa5-4015-9f4d-849e89fbb089"
      decimals="-5"
      id="F_df108ce3-0e56-43da-9447-1d0f13fe1312"
      unitRef="U_USD">41500000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_59afdc42-d89c-4304-8fd5-30a4bc86aa6a">P2Y1M6D</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_9de2a32f-d4b1-4021-a5c7-7f4f2b832bae">&lt;p id="note_11_business_combinations" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 11 &#x2013; ACQUISITIONS AND DIVESTITURES&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Acquisitions&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Applied Energy Group, Inc.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;On &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, the Company completed the acquisition of &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;AEG &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;an energy technology and advisory services company&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, for &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;60.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; in cash consideration before final net working capital adjustments. AEG provides a suite of integrated technology and advisory solutions to electric and gas utilities, state and local governments, and state energy offices nationwide which enhances the Company&#x2019;s service offering and client footprint.&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;As part of the preliminary allocation of the purchase consideration, the Company recorded the following:&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:77.08%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:20.919999999999998%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Net working capital&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,970&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Property and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;55&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Customer-related intangibles&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;20,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Trade names and trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;350&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Goodwill&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;31,279&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Purchase considerations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;60,654&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Net working capital includes restricted cash of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, accounts receivable of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, contract assets of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, accrued expenses of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, accounts payable of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, and other assets and liabilities of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The finalization of allocation is expected to be completed by the second quarter of 2025 and is currently open primarily for final net working capital adjustments.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The estimated useful lives of acquired intangible assets are as follows:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:77.08%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:22.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Customer-related intangibles&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.0&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.0 &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Trade names and trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3.5&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;months&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;T&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;he Company revised customer-related intangibles from an initial estimate of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million to $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;20.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million and estimated useful life from &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;9.0&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years to &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;6.0&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years as a result of new information received during the quarter ended March 31, 2025.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The goodwill is attributable to the workforce of AEG and expected synergies with the Company. Goodwill has an indefinite life and is deductible for income tax purposes. The pro-forma impact of the acquisition is not material to the Company&#x2019;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;s results of operations.&lt;/span&gt;&lt;/p&gt;</us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock>
    <us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1
      contextRef="C_9e6f0002-5125-45cf-a28f-bf5906a2373d"
      id="F_f9049c39-5ac8-4f6a-bcaa-ff097039d49c">2024-12-31</us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1>
    <us-gaap:BusinessAcquisitionDescriptionOfAcquiredEntity
      contextRef="C_e2fa8410-f9e6-4f90-84e5-0fe612923e5a"
      id="F_2f398bdc-3ea1-4b76-bc16-c275c492524f">AEG an energy technology and advisory services company</us-gaap:BusinessAcquisitionDescriptionOfAcquiredEntity>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="C_9e6f0002-5125-45cf-a28f-bf5906a2373d"
      decimals="-5"
      id="F_642fb074-c5fc-4780-b025-904843249439"
      unitRef="U_USD">60700000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_098296d0-0563-4c10-92ed-44b153e53fc7">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;As part of the preliminary allocation of the purchase consideration, the Company recorded the following:&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:77.08%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:20.919999999999998%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Net working capital&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,970&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Property and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;55&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Customer-related intangibles&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;20,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Trade names and trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;350&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Goodwill&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;31,279&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Purchase considerations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;60,654&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock>
    <icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital
      contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0"
      decimals="-3"
      id="F_6e025c31-54b0-4c21-8e7a-707734caaecb"
      unitRef="U_USD">3970000</icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedWorkingCapital>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0"
      decimals="-3"
      id="F_97fee5ba-8e25-4906-beb4-ecd0dedde2fe"
      unitRef="U_USD">55000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="C_77ad4326-8766-4793-8bd1-a2a47caf60eb"
      decimals="-3"
      id="F_606f9f90-1f47-450c-9994-69ec0594c07a"
      unitRef="U_USD">20000000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="C_345f4281-481c-4eee-9334-a2f509aad8d8"
      decimals="-3"
      id="F_456aa6e9-3c23-495a-8feb-bfec11a04f9f"
      unitRef="U_USD">5000000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="C_8f3abf3b-8a9b-4dd3-9b57-d61259178c47"
      decimals="-3"
      id="F_f2a9b16a-27ad-48ae-9796-98c55a434d28"
      unitRef="U_USD">350000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill
      contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0"
      decimals="-3"
      id="F_9b095f18-982a-4f67-8cbf-83d25a507e42"
      unitRef="U_USD">31279000</icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="C_e2fa8410-f9e6-4f90-84e5-0fe612923e5a"
      decimals="-3"
      id="F_d87474b7-f6cf-42dc-ada1-0d5df91a4876"
      unitRef="U_USD">60654000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0"
      decimals="-5"
      id="F_2aff3760-e0ac-4268-a8ab-e3fee0376a32"
      unitRef="U_USD">5400000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0"
      decimals="-5"
      id="F_0300d5d6-1951-4798-9c02-a0d1aee5f705"
      unitRef="U_USD">4500000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets
      contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0"
      decimals="-5"
      id="F_b03affe4-68fa-4017-8057-82197a133073"
      unitRef="U_USD">2600000</icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractAssets>
    <icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities
      contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0"
      decimals="-5"
      id="F_632694d4-1d09-4335-afcd-ce33d3ac1df6"
      unitRef="U_USD">6600000</icfi:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedExpensesAndOtherLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0"
      decimals="-5"
      id="F_92a99e1a-cf00-488b-8065-2e6e64672bc1"
      unitRef="U_USD">1300000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0"
      decimals="-5"
      id="F_15dbea6b-579d-494f-b0ba-5ccc97eff94f"
      unitRef="U_USD">700000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther
      contextRef="C_f8ae11e8-edbd-4319-8986-377724fc88d0"
      decimals="-5"
      id="F_cdb615a7-61eb-4a64-be59-c3dd6da1f82a"
      unitRef="U_USD">700000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_a323cd77-146c-4c31-afe8-cbdda360c42d">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The estimated useful lives of acquired intangible assets are as follows:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:77.08%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:22.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Customer-related intangibles&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6.0&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.0 &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;Trade names and trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3.5&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;months&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;T&lt;/span&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="C_c54427f6-4d40-4ed9-a059-5e5e46151c50"
      id="F_99e39592-86af-4d71-b3a0-89bf3b96d1e7">P6Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="C_c284df75-1ba0-4f3b-a4f2-955dd514609a"
      id="F_b75bde00-5503-4359-b8bc-0839c3edd0d7">P4Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="C_04c3445e-c079-4c5f-9e9a-5d1a87eddcde"
      id="F_71c38347-8657-4790-8158-2f44a3dc272e">P3M15D</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="C_fc2ef133-12c4-4171-a846-46c299d306c3"
      decimals="-5"
      id="F_45bcf81e-c272-4421-b934-c63dcd27baec"
      unitRef="U_USD">21000000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="C_77ad4326-8766-4793-8bd1-a2a47caf60eb"
      decimals="-5"
      id="F_3684ab25-4cef-48bc-9e56-c21640bdaf79"
      unitRef="U_USD">20000000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="C_93505554-9748-4f89-98a3-9b6f74dbca8c"
      id="F_62d95e09-ec6f-4491-b119-0375bc554691">P9Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="C_c54427f6-4d40-4ed9-a059-5e5e46151c50"
      id="F_232b9070-6b93-4f5d-88a2-0553bc2d27e0">P6Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_f9ab6b31-63c5-4424-ab8c-3f34701dfa73">&lt;p id="note_11_earnings_per_share" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 12 &#x2013; EARNINGS PER SHARE&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Earnings per share (&#x201c;EPS&#x201d;), including the dilutive effect of stock awards for each period reported is summarized below:&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:62.647%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.96%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:14.717%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.96%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:14.717%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;(in thousands, except per share data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Net Income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;26,851&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;27,317&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Weighted-average number of basic shares outstanding during the period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,506&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,757&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Dilutive effect of stock awards&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;107&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;189&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Weighted-average number of diluted shares outstanding during the period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,613&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,946&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Basic EPS&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.45&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.46&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Diluted EPS&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.44&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.44&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;A total of &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;79,863&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; shares of restricted stock awards were excluded from the calculation of EPS for the three months ended March 31, 2025&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; because they were anti-dilutive. There were &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10,901&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; shares excluded for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;three months ended March 31, 2024&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;/p&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_7fbb0969-bfcf-4011-807e-300f3f55aeb0">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Earnings per share (&#x201c;EPS&#x201d;), including the dilutive effect of stock awards for each period reported is summarized below:&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:62.647%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.96%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:14.717%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.96%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:14.717%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;(in thousands, except per share data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Net Income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;26,851&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;27,317&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Weighted-average number of basic shares outstanding during the period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,506&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,757&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Dilutive effect of stock awards&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;107&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;189&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Weighted-average number of diluted shares outstanding during the period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,613&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;18,946&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Basic EPS&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.45&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.46&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Diluted EPS&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.44&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.44&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_b8a30bed-249d-4cf8-a344-428b81466b31"
      unitRef="U_USD">26851000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_391a1ce2-f6fe-424e-bfe3-8d486677076d"
      unitRef="U_USD">27317000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_6eb964cd-3dc2-4730-a84c-4e6b08782cfe"
      unitRef="U_shares">18506000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_a95afd9b-f6c9-493d-aa8e-651f8a2cdd72"
      unitRef="U_shares">18757000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_d2c42c83-9718-4feb-b8ac-e54501c0f880"
      unitRef="U_shares">107000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_750edd4e-06b3-4c80-81ed-f5db541dcd8d"
      unitRef="U_shares">189000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_2500eb7b-5d81-450f-b48e-c16c329ca6fe"
      unitRef="U_shares">18613000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_fd02ff59-8916-4130-ae62-d43739c63136"
      unitRef="U_shares">18946000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="2"
      id="F_949a928f-e5f5-496a-a2fe-d6ad0a9a4c7a"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.45</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="2"
      id="F_7d001e8e-117a-441a-be15-9fa06ed2322c"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.46</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="2"
      id="F_b538b616-1ad6-43ad-8bb5-838582f93a59"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.44</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="2"
      id="F_1d997621-1db5-4669-a6bf-8ce8ae06d662"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.44</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="C_359bce9d-0b82-4401-934b-1a14d1fb9b89"
      decimals="0"
      id="F_a088503e-2c6a-42dd-9049-db594efc4155"
      unitRef="U_shares">79863</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="C_606932a5-5f82-45d9-b5fe-618a80a169b5"
      decimals="0"
      id="F_5a188896-f08f-4afd-b5d4-b679c1273ec5"
      unitRef="U_shares">10901</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_8681b47c-eaf3-48cb-bed7-b0ad6eaa1e97">&lt;p id="note_12_fair_value" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 13 &#x2013; FAIR VALUE&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Financial instruments measured at fair value on a recurring basis and their location within the accompanying consolidated balance sheets are as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:40.98%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:27.18%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="14" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;(in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Location on Balance Sheet&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - current portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;197&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;197&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Prepaid expenses and other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Company-owned life insurance policies&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;22,927&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;22,927&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - current portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accrued expenses and other current liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - long-term portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,716&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,716&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other long-term liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:40.98%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:27.18%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;(in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Location on Balance Sheet&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - current portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;825&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;825&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Prepaid expenses and other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - long-term portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Company-owned life insurance policies&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,174&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,174&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - current portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accrued expenses and other current liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - long-term portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;153&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;153&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other long-term liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_bbaa3a2a-6c93-4e63-8a52-74e057dd13a9">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Financial instruments measured at fair value on a recurring basis and their location within the accompanying consolidated balance sheets are as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:40.98%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:27.18%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="14" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;(in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Location on Balance Sheet&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - current portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;197&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;197&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Prepaid expenses and other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Company-owned life insurance policies&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;22,927&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;22,927&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - current portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accrued expenses and other current liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - long-term portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,716&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,716&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other long-term liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:40.98%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:4.58%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1.38%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:27.18%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="14" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;(in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Level 3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Location on Balance Sheet&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - current portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;825&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;825&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Prepaid expenses and other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - long-term portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Company-owned life insurance policies&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,174&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,174&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cceeff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - current portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accrued expenses and other current liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest rate swaps - long-term portion&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;153&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;153&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other long-term liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;</us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_1c5f0b7a-89d2-4fbf-b457-f53569fe6777"
      decimals="-3"
      id="F_c12cf953-65a6-4be0-ba96-b23e9889f325"
      unitRef="U_USD">197000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_f84c9782-f8ab-4f6a-b349-2b609fdec6dc"
      decimals="-3"
      id="F_7c1694dd-a674-4c7d-a8f5-b7e744580eea"
      unitRef="U_USD">197000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_eee9c0ed-4279-41c1-86a0-a7968bfdf78b"
      decimals="-3"
      id="F_ba51ff74-709f-483c-b56e-83dfd6f5cd54"
      unitRef="U_USD">22927000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_0b23d0b4-7b10-4543-9657-854b7ce89dd4"
      decimals="-3"
      id="F_550a60ab-6740-45ab-b5df-aa1b6a755cb4"
      unitRef="U_USD">22927000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:FinancialLiabilitiesFairValueDisclosure
      contextRef="C_23ecbd7d-b4ab-4be4-b21b-0c94dc3a62c0"
      decimals="-3"
      id="F_df12942e-1240-4439-82bb-a7a60ea685a8"
      unitRef="U_USD">240000</us-gaap:FinancialLiabilitiesFairValueDisclosure>
    <us-gaap:FinancialLiabilitiesFairValueDisclosure
      contextRef="C_0e036038-5185-45ec-bc46-7db5540888de"
      decimals="-3"
      id="F_81929341-28b1-4a7d-9bb7-5198d54d7b75"
      unitRef="U_USD">240000</us-gaap:FinancialLiabilitiesFairValueDisclosure>
    <us-gaap:FinancialLiabilitiesFairValueDisclosure
      contextRef="C_5c6ef9ed-d6a9-425e-8d10-b25381323fbc"
      decimals="-3"
      id="F_4a02416c-9ce9-4a32-8f0b-7ed72428699f"
      unitRef="U_USD">1716000</us-gaap:FinancialLiabilitiesFairValueDisclosure>
    <us-gaap:FinancialLiabilitiesFairValueDisclosure
      contextRef="C_4e228a4a-1d27-4d01-9790-529f658e7a58"
      decimals="-3"
      id="F_5871f851-5567-4501-9487-c8fcc4ef6c2e"
      unitRef="U_USD">1716000</us-gaap:FinancialLiabilitiesFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_ec67ad54-e2c6-459b-ac2a-1c80507eef70"
      decimals="-3"
      id="F_1ad01510-351c-4ddc-9ff0-e4bd1ba62e0b"
      unitRef="U_USD">825000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_3a796a9d-5766-4805-8b2a-2ff890188751"
      decimals="-3"
      id="F_ff9e6022-fdc3-4977-a857-f6e2a1dc5da8"
      unitRef="U_USD">825000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_e556f098-db10-4065-8c0f-c09bcb16d0b8"
      decimals="-3"
      id="F_496f30a6-8f30-47e3-aa95-dde7116ccf75"
      unitRef="U_USD">129000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_e86b3d44-b8ec-4784-aebd-c72412fc6544"
      decimals="-3"
      id="F_246b594f-418a-42ce-baba-d5a3d8b17caa"
      unitRef="U_USD">129000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_5647a77d-445a-47db-8541-6af6f2e97582"
      decimals="-3"
      id="F_917eac01-fbe6-4c54-95ae-ee11ae0d6b0c"
      unitRef="U_USD">23174000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_ec06fe12-c155-40f5-94db-0bce2d5ef1d4"
      decimals="-3"
      id="F_51e9d476-4840-44c5-b040-bcb434a35811"
      unitRef="U_USD">23174000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:FinancialLiabilitiesFairValueDisclosure
      contextRef="C_57bb215b-5356-401f-8995-dd1b215e7488"
      decimals="-3"
      id="F_07e852a4-b19a-4dcd-b44e-79fbb061a24b"
      unitRef="U_USD">15000</us-gaap:FinancialLiabilitiesFairValueDisclosure>
    <us-gaap:FinancialLiabilitiesFairValueDisclosure
      contextRef="C_e5627bea-4bc9-4e67-8942-517566d89aaa"
      decimals="-3"
      id="F_f75bb201-5fb9-4624-82c0-97723d3ffe48"
      unitRef="U_USD">15000</us-gaap:FinancialLiabilitiesFairValueDisclosure>
    <us-gaap:FinancialLiabilitiesFairValueDisclosure
      contextRef="C_1f387a1f-cbe1-491e-9324-6f5097db4eb4"
      decimals="-3"
      id="F_ac9dcceb-db39-424d-8e7a-b91c7a58360d"
      unitRef="U_USD">153000</us-gaap:FinancialLiabilitiesFairValueDisclosure>
    <us-gaap:FinancialLiabilitiesFairValueDisclosure
      contextRef="C_1c2ff08b-dd48-45ac-8d1c-5d0adee40de1"
      decimals="-3"
      id="F_5ffd434d-edea-438d-904a-8a4edf034be8"
      unitRef="U_USD">153000</us-gaap:FinancialLiabilitiesFairValueDisclosure>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_0cf941cd-edbd-47c6-9877-48002e9b7774">&lt;p id="note_13_commitments_contingencies" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 14 &#x2013; COMMITMENTS AND CONTINGENCIES&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Letters of Credit and Guarantees&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company had open standby letters of credit totaling &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; at both March 31, 2025 and December 31, 2024, respectively. Open standby letters of credit reduce the Company&#x2019;s borrowing capacity under the Credit Facility.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;At March 31, 2025 and December 31, 2024, the Company had &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, respectively, of bank guarantees for facility leases and contract performance obligations.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Litigation and Claims&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company is involved in various legal matters and proceedings arising in the ordinary course of business. While these matters and proceedings cause it to incur costs, including, but not limited to, attorneys&#x2019; fees, the Company currently believes that any ultimate liability arising out of these matters and proceedings will not have a material adverse effect on its financial position, results of operations, or cash flows.&lt;/span&gt;&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LettersOfCreditOutstandingAmount
      contextRef="C_65b8a2bd-11e0-47d3-a8bf-6ada5559cac9"
      decimals="-5"
      id="F_d364f290-8e6e-479d-b9ad-02a723865e4a"
      unitRef="U_USD">1600000</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:LettersOfCreditOutstandingAmount
      contextRef="C_b74866ce-58e9-4265-8578-7a14309d87ec"
      decimals="-5"
      id="F_039ae6c2-6241-4e2b-9bdf-40ab0df6b633"
      unitRef="U_USD">1600000</us-gaap:LettersOfCreditOutstandingAmount>
    <icfi:LettersOfCreditGuarantees
      contextRef="C_65b8a2bd-11e0-47d3-a8bf-6ada5559cac9"
      decimals="-5"
      id="F_08ead169-6cea-4119-98da-9fd1ea7c807e"
      unitRef="U_USD">8600000</icfi:LettersOfCreditGuarantees>
    <icfi:LettersOfCreditGuarantees
      contextRef="C_b74866ce-58e9-4265-8578-7a14309d87ec"
      decimals="-5"
      id="F_7a876930-022b-4df5-a594-c864128c1d63"
      unitRef="U_USD">8200000</icfi:LettersOfCreditGuarantees>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_4a8b7a82-64cc-4508-916e-4dd574a55cd3">&lt;p id="note_15_segment_information" style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NOTE 15 &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#x2013; SEGMENT INFORMATION&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company provides a broad array of professional services to its clients across several markets, primarily within the U.S. The Company operates as a &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_51a00615-6914-48fa-8ed4-d69f50bb4d78;"&gt;&lt;span style="-sec-ix-hidden:F_c0061dbd-9be7-4634-b204-9d0261eda80d;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;single&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; reportable and operating segment because the chief operating decision maker (the &#x201c;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_f92f70f9-2dcc-40b9-bd51-72c6f9b0dfea;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;CODM&#x201d;), which is the Chief Executive Officer&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, manages the business activities on a consolidated basis. Although the Company disaggregates revenue by client market and client type, it does not manage its business or allocate resources based on client market or type.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The CODM assesses segment performance based on consolidated net income as reported on the Company&#x2019;s consolidated statements of comprehensive income. The CODM uses consolidated net income to evaluate the Company&#x2019;s performance against budgets and decide whether to use the profits to invest in the business, pay down debt, repurchase stock, pay dividends, or fund acquisitions.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; Asset information provided to the CODM is not used for the purpose of making decisions and assessing performance of the Company.&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:11pt;font-family:'Calibri',sans-serif;"&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The segment revenue, significant segment expenses, and segment profit are as follows:&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:52.101%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.681%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:19.267999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.681%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:19.267999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;487,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;494,436&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Significant segment expenses:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Direct labor and related fringe costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;191,930&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;190,023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Subcontractors and other direct costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;110,612&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;120,510&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Indirect and selling expenses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;131,891&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129,094&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Depreciation and amortization&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5,318&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5,574&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Amortization of intangible assets acquired in business combinations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;9,477&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8,291&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;7,423&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8,329&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Provision for income taxes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,150&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;7,019&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Other segment expense (income) &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:bold;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;966&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,721&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Net Income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;26,851&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;27,317&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Other segment expense (income) includes interest income, foreign currency expense, and gains/losses on disposition of assets.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:SegmentReportingCodmProfitLossMeasureHowUsedDescription
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_074b04c5-6743-4521-8f3f-399b6706b379">The CODM assesses segment performance based on consolidated net income as reported on the Company&#x2019;s consolidated statements of comprehensive income. The CODM uses consolidated net income to evaluate the Company&#x2019;s performance against budgets and decide whether to use the profits to invest in the business, pay down debt, repurchase stock, pay dividends, or fund acquisitions.</us-gaap:SegmentReportingCodmProfitLossMeasureHowUsedDescription>
    <us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_cdea3eef-0ae5-42bb-8db1-2c58851095b7">&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The segment revenue, significant segment expenses, and segment profit are as follows:&lt;/span&gt;&lt;/p&gt;
       &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;"&gt;
        &lt;tr style="visibility:collapse;"&gt;
         &lt;td style="width:52.101%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.681%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:19.267999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:2.681%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:19.267999999999997%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;487,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;494,436&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Significant segment expenses:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Direct labor and related fringe costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;191,930&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;190,023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Subcontractors and other direct costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;110,612&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;120,510&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Indirect and selling expenses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;131,891&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129,094&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Depreciation and amortization&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5,318&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5,574&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Amortization of intangible assets acquired in business combinations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;9,477&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8,291&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Interest expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;7,423&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8,329&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;text-indent:5pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:0.92%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Provision for income taxes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,150&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;7,019&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Other segment expense (income) &lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:bold;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;966&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,721&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Net Income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;26,851&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;27,317&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;/tr&gt;
       &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Other segment expense (income) includes interest income, foreign currency expense, and gains/losses on disposition of assets.&lt;/span&gt;&lt;/p&gt;</us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_d89e2862-e8ba-4375-ae80-e937da546c47"
      unitRef="U_USD">487618000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_1abf5aac-10bd-4774-9bdf-cfc7f387d79b"
      unitRef="U_USD">494436000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <icfi:DirectLaborAndRelatedFringeCosts
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_d194a821-83b8-43ca-ad8a-da48ed3b53fc"
      unitRef="U_USD">191930000</icfi:DirectLaborAndRelatedFringeCosts>
    <icfi:DirectLaborAndRelatedFringeCosts
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_1343537b-5b19-4e63-bc9a-689ae29170b5"
      unitRef="U_USD">190023000</icfi:DirectLaborAndRelatedFringeCosts>
    <icfi:SubcontractorsAndOtherDirectCosts
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_b5bc4b2b-eb3b-43ac-883e-e5b28a0ad7dc"
      unitRef="U_USD">110612000</icfi:SubcontractorsAndOtherDirectCosts>
    <icfi:SubcontractorsAndOtherDirectCosts
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_0b7632bc-63e7-492b-af8d-8a53687ca14b"
      unitRef="U_USD">120510000</icfi:SubcontractorsAndOtherDirectCosts>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_b5c0b45c-2a6e-4e2b-ba9e-ccd56784bd92"
      unitRef="U_USD">131891000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_b9b434b8-9643-4b8e-91de-6d7eb7783c64"
      unitRef="U_USD">129094000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:DepreciationAndAmortization
      contextRef="C_7a0c649b-3e1d-4d1d-a3a3-b66c1bc2cf25"
      decimals="-3"
      id="F_eb0fb6b8-138f-49f0-a04d-5ac3ab3e5915"
      unitRef="U_USD">5318000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="C_ba5d0763-b64a-43dc-9a60-fcaaa4cb3e0c"
      decimals="-3"
      id="F_7c25f16a-f663-4349-9eb9-90504dd5197d"
      unitRef="U_USD">5574000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="C_82d21078-75e2-4645-abab-f2cc96112b68"
      decimals="-3"
      id="F_cce3402f-83de-4c05-bbfc-008237e1d0a2"
      unitRef="U_USD">9477000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="C_d5debb6a-e3cd-4c36-a151-a29229e8eeac"
      decimals="-3"
      id="F_ddf506e5-57e0-4b69-9402-18e7bda5c560"
      unitRef="U_USD">8291000</us-gaap:DepreciationAndAmortization>
    <us-gaap:InterestExpenseNonoperating
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_4932a045-2736-4ae8-a3f5-bcf0cbc5c5f5"
      unitRef="U_USD">7423000</us-gaap:InterestExpenseNonoperating>
    <us-gaap:InterestExpenseNonoperating
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_e408f3d6-3de6-4f70-8601-f98aa3aa6cef"
      unitRef="U_USD">8329000</us-gaap:InterestExpenseNonoperating>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_7bcf1655-eac8-471f-bfa8-8ccff48e8718"
      unitRef="U_USD">3150000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_63e0801d-9a90-488a-9559-fba30e20d94e"
      unitRef="U_USD">7019000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:SegmentReportingOtherItemAmount
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_3b5959ed-33ee-49ef-895c-d4f212203bc1"
      unitRef="U_USD">966000</us-gaap:SegmentReportingOtherItemAmount>
    <us-gaap:SegmentReportingOtherItemAmount
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_c2dfb09f-6a50-48d2-8603-139c164d9f42"
      unitRef="U_USD">-1721000</us-gaap:SegmentReportingOtherItemAmount>
    <us-gaap:NetIncomeLoss
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      decimals="-3"
      id="F_367fe8a1-65de-4be0-99c7-22f3e3cf258d"
      unitRef="U_USD">26851000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_808d33d4-394e-401c-9ad5-d3f7a37d4fef"
      decimals="-3"
      id="F_980a4fb0-7573-460f-a6bc-971b9db4fc5a"
      unitRef="U_USD">27317000</us-gaap:NetIncomeLoss>
    <ecd:Rule10b51ArrAdoptedFlag
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_5593685d-b29b-4b2d-beb9-ac2023861b49">false</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:NonRule10b51ArrAdoptedFlag
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_7f833186-184c-4603-bc97-a1107771f3a2">false</ecd:NonRule10b51ArrAdoptedFlag>
    <ecd:Rule10b51ArrTrmntdFlag
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_26da4c72-f41b-4161-a566-b8d4f5a47e0d">false</ecd:Rule10b51ArrTrmntdFlag>
    <ecd:NonRule10b51ArrTrmntdFlag
      contextRef="C_067e4f33-8793-41c4-a5a4-3dc465f227c9"
      id="F_e471eee4-1fc9-4c2f-8cec-e02293340b47">false</ecd:NonRule10b51ArrTrmntdFlag>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc
          xlink:href="#F_26880c7c-3d42-4d8b-8eaa-e4814a2d93f3"
          xlink:label="F_26880c7c-3d42-4d8b-8eaa-e4814a2d93f3"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_a6a82561-18d3-45b0-bc26-bc32efff5e49"
          xlink:label="F_a6a82561-18d3-45b0-bc26-bc32efff5e49"
          xlink:type="locator"/>
        <link:footnote id="FNT_f9bca2f9-d335-4332-9735-5bde85ef9630" xlink:label="FNT_f9bca2f9-d335-4332-9735-5bde85ef9630" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The beginning balances represent billed contract receivables that were previously sold and derecognized by the Company but had not been collected from customers as of January 1, </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025 and 2024</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_26880c7c-3d42-4d8b-8eaa-e4814a2d93f3"
          xlink:to="FNT_f9bca2f9-d335-4332-9735-5bde85ef9630"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_a6a82561-18d3-45b0-bc26-bc32efff5e49"
          xlink:to="FNT_f9bca2f9-d335-4332-9735-5bde85ef9630"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_9c4f384d-7e45-404a-a6b0-35d78fc49e0f"
          xlink:label="F_9c4f384d-7e45-404a-a6b0-35d78fc49e0f"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_2bff5b95-d60c-42a7-ad55-478c552d50a8"
          xlink:label="F_2bff5b95-d60c-42a7-ad55-478c552d50a8"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_857e7fd3-d582-4160-8381-a1b82785d932"
          xlink:label="F_857e7fd3-d582-4160-8381-a1b82785d932"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_5b7f5901-7b25-4a93-ac91-a24bf2d126a5"
          xlink:label="F_5b7f5901-7b25-4a93-ac91-a24bf2d126a5"
          xlink:type="locator"/>
        <link:footnote id="FNT_39ecc697-12f7-4baf-aba4-a924576f28e1" xlink:label="FNT_39ecc697-12f7-4baf-aba4-a924576f28e1" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</xhtml:span><xhtml:span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.2</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</xhtml:span><xhtml:span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.6</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the sale of billed contract receivables.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_9c4f384d-7e45-404a-a6b0-35d78fc49e0f"
          xlink:to="FNT_39ecc697-12f7-4baf-aba4-a924576f28e1"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_2bff5b95-d60c-42a7-ad55-478c552d50a8"
          xlink:to="FNT_39ecc697-12f7-4baf-aba4-a924576f28e1"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_857e7fd3-d582-4160-8381-a1b82785d932"
          xlink:to="FNT_39ecc697-12f7-4baf-aba4-a924576f28e1"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_5b7f5901-7b25-4a93-ac91-a24bf2d126a5"
          xlink:to="FNT_39ecc697-12f7-4baf-aba4-a924576f28e1"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_86fbc746-81cf-4e5e-8582-8319bf618dfc"
          xlink:label="F_86fbc746-81cf-4e5e-8582-8319bf618dfc"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_1afbfb38-878c-4001-b438-9812cb12ce15"
          xlink:label="F_1afbfb38-878c-4001-b438-9812cb12ce15"
          xlink:type="locator"/>
        <link:footnote id="FNT_d1332bc6-5fe5-4160-a3ef-ad6f13c8f985" xlink:label="FNT_d1332bc6-5fe5-4160-a3ef-ad6f13c8f985" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The ending balances represent billed contract receivables that were sold and derecognized by the Company but had not been collected from customers as of </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, 2025 and 2024</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_86fbc746-81cf-4e5e-8582-8319bf618dfc"
          xlink:to="FNT_d1332bc6-5fe5-4160-a3ef-ad6f13c8f985"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_1afbfb38-878c-4001-b438-9812cb12ce15"
          xlink:to="FNT_d1332bc6-5fe5-4160-a3ef-ad6f13c8f985"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_b4e90267-913a-4e8c-b65b-ae46f879eb8e"
          xlink:label="F_b4e90267-913a-4e8c-b65b-ae46f879eb8e"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_508711e7-8990-4839-8515-eacdda51b6e1"
          xlink:label="F_508711e7-8990-4839-8515-eacdda51b6e1"
          xlink:type="locator"/>
        <link:footnote id="FNT_6d0ca688-1ea8-4379-9f51-cf6180485ed5" xlink:label="FNT_6d0ca688-1ea8-4379-9f51-cf6180485ed5" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The beginning balances represent cash collected from customers on behalf of MUFG for billed contract receivables that were previously sold and derecognized by the Company but had not been remitted to MUFG as of January 1, </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025 and 2024</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_b4e90267-913a-4e8c-b65b-ae46f879eb8e"
          xlink:to="FNT_6d0ca688-1ea8-4379-9f51-cf6180485ed5"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_508711e7-8990-4839-8515-eacdda51b6e1"
          xlink:to="FNT_6d0ca688-1ea8-4379-9f51-cf6180485ed5"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_d5a2d9bb-706a-4a71-89db-8c1c1b3eb44d"
          xlink:label="F_d5a2d9bb-706a-4a71-89db-8c1c1b3eb44d"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_dd449503-322b-4309-a0fc-2d68634dc42a"
          xlink:label="F_dd449503-322b-4309-a0fc-2d68634dc42a"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_b0daecf3-2a14-4411-a8e6-7a2bf0c078d5"
          xlink:label="F_b0daecf3-2a14-4411-a8e6-7a2bf0c078d5"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_bee7fb91-6676-4b53-b526-4712034f6fbc"
          xlink:label="F_bee7fb91-6676-4b53-b526-4712034f6fbc"
          xlink:type="locator"/>
        <link:footnote id="FNT_fd72a864-4fd5-4b4e-9a66-38ecb5b278a5" xlink:label="FNT_fd72a864-4fd5-4b4e-9a66-38ecb5b278a5" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">three months ended March 31, 2025 and 2024, the Company recorded net inflows of </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</xhtml:span><xhtml:span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.5</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">$</xhtml:span><xhtml:span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.9</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively, in its cash flows from operating activities from the collection of billed contract receivables that were sold but not yet remitted to MUFG.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_d5a2d9bb-706a-4a71-89db-8c1c1b3eb44d"
          xlink:to="FNT_fd72a864-4fd5-4b4e-9a66-38ecb5b278a5"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_dd449503-322b-4309-a0fc-2d68634dc42a"
          xlink:to="FNT_fd72a864-4fd5-4b4e-9a66-38ecb5b278a5"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_b0daecf3-2a14-4411-a8e6-7a2bf0c078d5"
          xlink:to="FNT_fd72a864-4fd5-4b4e-9a66-38ecb5b278a5"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_bee7fb91-6676-4b53-b526-4712034f6fbc"
          xlink:to="FNT_fd72a864-4fd5-4b4e-9a66-38ecb5b278a5"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_f94e8f32-953d-4d14-abfd-0c40abb243f5"
          xlink:label="F_f94e8f32-953d-4d14-abfd-0c40abb243f5"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_3d34d880-3164-4b1c-8b67-6e970453f968"
          xlink:label="F_3d34d880-3164-4b1c-8b67-6e970453f968"
          xlink:type="locator"/>
        <link:footnote id="FNT_648cca45-e463-4126-8651-e226e64461ab" xlink:label="FNT_648cca45-e463-4126-8651-e226e64461ab" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The ending balances are included as part of &#x201c;Accrued expenses and other current liabilities&#x201d; on the Company&#x2019;s consolidated balance sheets.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_f94e8f32-953d-4d14-abfd-0c40abb243f5"
          xlink:to="FNT_648cca45-e463-4126-8651-e226e64461ab"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_3d34d880-3164-4b1c-8b67-6e970453f968"
          xlink:to="FNT_648cca45-e463-4126-8651-e226e64461ab"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_9672d8e5-b2d5-44e8-9ee9-1d87baeee88e"
          xlink:label="F_9672d8e5-b2d5-44e8-9ee9-1d87baeee88e"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_254c6068-cd9c-41dc-9dfc-1545e23c0e43"
          xlink:label="F_254c6068-cd9c-41dc-9dfc-1545e23c0e43"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_c0bec086-e6da-4280-baa3-a0ffbb10676b"
          xlink:label="F_c0bec086-e6da-4280-baa3-a0ffbb10676b"
          xlink:type="locator"/>
        <link:footnote id="FNT_4909917d-0685-4b82-9a24-610497a41b08" xlink:label="FNT_4909917d-0685-4b82-9a24-610497a41b08" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company reclassified $</xhtml:span><xhtml:span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.1</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of effect of taxes related to Foreign Currency Translation Adjustments from accumulated other comprehensive (loss) income into earnings in connection with IRC 987. </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">See &#x201c;Note 8 &#x2013; Income Taxes&#x201d;.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_9672d8e5-b2d5-44e8-9ee9-1d87baeee88e"
          xlink:to="FNT_4909917d-0685-4b82-9a24-610497a41b08"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_254c6068-cd9c-41dc-9dfc-1545e23c0e43"
          xlink:to="FNT_4909917d-0685-4b82-9a24-610497a41b08"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_c0bec086-e6da-4280-baa3-a0ffbb10676b"
          xlink:to="FNT_4909917d-0685-4b82-9a24-610497a41b08"
          xlink:type="arc"/>
        <link:footnote id="FNT_e6741e45-c854-4f8b-85a7-8762b41454e5" xlink:label="FNT_e6741e45-c854-4f8b-85a7-8762b41454e5" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company expects to reclassify approximately $</xhtml:span><xhtml:span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.1</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of unrealized losses related to the Change in Fair Value of Interest Rate Hedge Agreements from accumulated other comprehensive (loss) income into earnings during the next 12 months.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_9672d8e5-b2d5-44e8-9ee9-1d87baeee88e"
          xlink:to="FNT_e6741e45-c854-4f8b-85a7-8762b41454e5"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_254c6068-cd9c-41dc-9dfc-1545e23c0e43"
          xlink:to="FNT_e6741e45-c854-4f8b-85a7-8762b41454e5"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_c0bec086-e6da-4280-baa3-a0ffbb10676b"
          xlink:to="FNT_e6741e45-c854-4f8b-85a7-8762b41454e5"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_c2dfb09f-6a50-48d2-8603-139c164d9f42"
          xlink:label="F_c2dfb09f-6a50-48d2-8603-139c164d9f42"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_3b5959ed-33ee-49ef-895c-d4f212203bc1"
          xlink:label="F_3b5959ed-33ee-49ef-895c-d4f212203bc1"
          xlink:type="locator"/>
        <link:footnote id="FNT_e395be57-cd1e-4f15-8a0a-58d6cbdf31f4" xlink:label="FNT_e395be57-cd1e-4f15-8a0a-58d6cbdf31f4" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Other segment expense (income) includes interest income, foreign currency expense, and gains/losses on disposition of assets.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_c2dfb09f-6a50-48d2-8603-139c164d9f42"
          xlink:to="FNT_e395be57-cd1e-4f15-8a0a-58d6cbdf31f4"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_3b5959ed-33ee-49ef-895c-d4f212203bc1"
          xlink:to="FNT_e395be57-cd1e-4f15-8a0a-58d6cbdf31f4"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
